我在ruby 1.9.2,rails3。
所以我的网站有一些结构,
我希望将菜单放在我的网页中间。
我正在做类似的事情(在application.html.erb文件中)
blahblahblah
<div id="menu">
<%= yield :menu %>
<div>
blahblhablah
我有一个文件menu.html.erb,其中包含该网站的菜单结构。 如果我想使用./layout文件夹中的文件作为该yield:菜单的一部分,我该怎么办?我想知道,如果我必须为每个控制器使用content_for,并且在每个函数中...... 顺便说一句,menu.html.erb对于每个控制器都是不同的,所以这就是我为什么要让它产生的。
总之,我只是希望在任何地方都包含一个常见的共享menu.html.erb。
答案 0 :(得分:5)
您可以在视图中执行以下操作:
<% content_for(:menu) do %>
<%= render :partial => "/layouts/user_menu.html.erb" %>
<% end %>
您可以尝试将其与controller.controller_name
结合使用(不确定这适用于Rails3)并自动为每个控制器加载不同的菜单。
答案 1 :(得分:1)
你可能会考虑在布局上观看railscast,它简洁而有用。 数字7和8。