我已经在布局文件夹 取得了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