我已經在佈局文件夾 取得了menu.html.erb頁我在application.html.rb 使用我想在導軌的選定頁面中顯示菜單標題佈局?
<body>
<%=render 'layouts/menus'%>
<%= yield %>
<%=render 'layouts/footers'%>
</body>
我的問題是,這菜單和頁腳適用於所有頁面我不想要。
我想不具有這些菜單和頁腳部分頁面
任何幫助,請???
我已經在佈局文件夾 取得了menu.html.erb頁我在application.html.rb 使用我想在導軌的選定頁面中顯示菜單標題佈局?
<body>
<%=render 'layouts/menus'%>
<%= yield %>
<%=render 'layouts/footers'%>
</body>
我的問題是,這菜單和頁腳適用於所有頁面我不想要。
我想不具有這些菜單和頁腳部分頁面
任何幫助,請???
這只不過是另一種聰明的方式來做到這一點。
你可以把在頂部的控制器的before_filter:
before_filter :have_sidebar except: [:show, :index]
# ^This is an example, but choose whatever views you do not want it to appear in.
# Add this to your controller methods.
def have_sidebar
@have_sidebar = true
end
然後在你的application.html.erb,這樣寫:
<body>
<%=render 'layouts/menus' if @have_sidebar %>
<%= yield %>
<%=render 'layouts/footers' if @have_sidebar %>
</body>
如果你希望在無菜單/頁腳使用的應用程序佈局這些頁面,那麼你可以做:
<body>
<%=render 'layouts/menus' if @show_menu %>
<%= yield %>
<%=render 'layouts/footers' if @show_footer%>
</body>
其中@show_menu和@show_footer可以在別處定義。
或者,如果你不想使用的應用程序佈局,你可以改變它,例如:
render :view, :layout => "another layout"
render :view, :layout => false # don't use any layout
我這樣做,但如果我在一個視圖中使用它它隱藏在該控制器下的所有視圖的菜單... – 2012-08-17 09:23:02
偉大的....謝謝... – 2012-08-17 09:21:45
沒有汗!祝你好運! – Trip 2012-08-17 09:23:41
這就是我正在尋找的.. – 2012-08-17 09:29:35