【发布时间】:2015-12-29 20:18:44
【问题描述】:
我在如何根据模型中的数据构建导航菜单时遇到问题。
我首先为我的静态页面设置了一个控制器。
# Static content
class PagesController < ApplicationController
def home
end
def contact
end
def services
end
end
然后我创建了一些部分,然后设置我的 application.html.erb 以在每个页面上显示它们。
<body>
<p class="notice"><%= notice %></p>
<p class="alert"><%= alert %></p>
<%= render "shared/header" %>
<%= render "shared/nav" %>
<%= yield %>
<%= render "shared/footer" %>
</body>
</html>
现在我需要创建一个导航菜单,客户端可以在其中更改链接,所以我有一个模型来记录菜单项的名称和 slug。
所以现在在我的 shared/_nav.html.erb 中,我需要访问 @menus 对象。设置这样的东西的rails最佳实践是什么?来自其他 MVC 架构,我的第一个想法是将控制器链接到导航部分,但我没有看到在 Rails 中这样做的方法。有没有一种方法可以让我的 @menus 对象在整个应用程序中全局可访问,因为每个页面都需要它?
【问题讨论】:
标签: ruby-on-rails