Hej.
Jeżeli w Layout w pliku .rhtml mam podany tytuł , to tytuł z podstron - z katalogu view nie są wyświetlane jak sobie z tym poradzic, to znaczy zrobic tak aby widoczny był tyluł ze strony głównej i z podstrony. Mam nadzieję że w miarę jasno określiłam z czym mam problem
pozdrawiam
monika
temat masz ustawiony w app/views/layouts/cos.rhtml?
wszystkie podstrony kontrolera ‘cos’ beda zawieraly ten temat
app/views/layouts/layout.rhtml
[code=ruby]
<%=@page_title%> <%= yield %> [/code] app/controllers/index_controller.rb [code=ruby]class MainController < ApplicationController def index @page_title = "Strona główna" end def show @page_title = "Pokaż dokument" end[/code] itd :) Jezeli chcesz miec jeszcze jakas globalna nazwe strony to w ApplicationController ustawiasz sobie [code=ruby] before_filter :page_title protected def page_title @page_title = "Mój Blog" end[/code] a w konkretnych kontrolerach zamiast [code=ruby] @page_title = "Strona główna"[/code] robisz [code=ruby] @page_title = "Strona główna - #{@page_title}"[/code]Tak w layout/cos.rhtml mialam ustawiony title i title z podstron nie pokazywał się. To co napisał PaK pomoglo
Wielkie dzięki
Mam jeszcze jeden problem dotyczący podstron
Jeżeli w podstronie (view/product/list.rhtml) w nagłówku nie umieszcze powyższego sposobu kodowania znaków, to mimo iż w layout/product.rhtml jest w nagłówku podany sposób kodowania znaków to i tak wyrzuca krzaczki. Czy muszę w każdej podstronie określać sposób kodowania znaków ?
pozdrawiam
monika
Wystarczy ze okreslisz jeden sposob kodowania w /app/views/layouts/layouts.rhtml i bedziesz uzywac tego layoutu do wszystkich kontrolerow i ich metod
Czyli w kontrolerach okreslić np: layout “standard-layout” ?
W zaproponowanym rozwiązaniu wyrzuca krzaczki w nazwie strony
ale działa zgodnie z oczekiwaniami.
Jezeli edytowalas dokument jako iso-8859-1 albo 2 i wpisalas np @page_title = “Śłomka Page” a dla standard-layout.rhtml ustawilas kodowanie jako utf-8 no to bedzie ci wyswietlac krzaczki musisz edytowac dokument w tym samym kodowaniu w ktorym bedziesz go wyswietlac.
Nie trzeba. Wystarczy że w views/layouts/ masz plik o nazwie application.rhtml. To jest domyślny layout dla wszystkich kontrolerów które (1) nie mają swojego odpowiednika w tym miejscu (np. dla my_controller.rb musiałby to być plik views/layouts/my.rhtml) oraz (2) nie mają jawnie zdefiniowanego layouts dla kontrolera, lub podczas wykonywania metody render().
mam kontroler product_controller i mam dla niego w layout/product.rhtml i tutaj też mam określony sposób kodowania ale nie wiem czemu to nie wystarcza bo kiedy usunę sposób kodowania określony w view/product/list.rhtml to pojawiają sie krzaczki. A w ogóle polskie litery wykorzystane w product_controller mimo wszystko pojawiaja się jako krzaczki ???
OK, przyglądne się temu uważnie
Udało mi się udało :)))
Tyle że w pliku kontrolera musiałam podać sposób koodwania (może to wina edytora, bo przy zmianie kodowania dodawał mi head i tam pdawał sposób kodowania…) i wziąc go w komentarz, w każdym razie zadziałało.
Jeszcze raz dzięki.