在rails app中定义子菜单的最佳方法

时间:2012-10-19 15:28:33

标签: ruby-on-rails

请您为以下案例建议最佳方法:     子菜单的方法:     我有不同的子菜单,如子菜单1,子菜单2等(每个子菜单都有自己的选项卡选项)。     我希望根据页面显示子菜单意味着根据打开的页面划分子菜单。

What I am planning for this:
<% content_for(:menu) do %>
    <%=  render :partail => "submanu" %>
<% end %>

and calling that section by <%= yield(:menu) %>

由于

1 个答案:

答案 0 :(得分:0)

我已经实现了类似于辅助方法“show menu”和控制器中哈希的类似内容。在你的情况下,我建议像:

def show
@menu = [{title: "menu.pages.one", controller: "pages", action: "one"},
{title: "menu.test.two", controller: "test", action: "two"}]
end

然后,您可以将它与帮助方法结合使用,该方法显示每个菜单项并创建如下链接:

link_to t(item[:title]), :controller => item[:controller], :action => item[:action]

我已经使用辅助方法创建了一个haml布局foreach链接,但你也可以使用partials。因此,您可以在每个控制器/方法中创建一个可自我解释的可扩展菜单。