我有一个导航栏(实际上是两个),我在一些控制器中使用before操作来填充它的动态数据(第二个栏在某些控制器中可能不存在),我看到了很多关于没有向视图传递大量实例变量的抱怨,所有这些都建议在渲染中传递局部变量。我一直在想,在主布局中使用实例变量来生成这些东西是否是个好主意,如果不是,我应该如何做到这一点,render似乎覆盖了默认视图,我只使用主布局中的数据
我不确定我是否完全理解你的问题。但对于我的一些菜单,我在布局中使用了类似的东西:
<%= yield(:menu_top) %>
我用
content_for :menu_top
以生成该区域中的内容。
例如:
<%= content_for :menu_top do %>
<li>my specific content or var</li>
<% end %>
这是content_for:link 的rails指南