【发布时间】:2010-07-19 22:34:40
【问题描述】:
我想在我的 First Ever Rails 应用程序中添加一个菜单。没什么太复杂的。 我已经确定我应该从 application.html.erb 中引用它,但在那之后我被卡住了。
这是我到目前为止所得到的(不多)
<%= render :partial => "menu" %>
如果我在 application.html.erb 中呈现部分调用“菜单”,我应该将菜单文件放在哪里,我该怎么称呼它?需要进入视图的控制器吗?
我可以从我所在的任何布局子文件夹中调用这个部分吗?
第二部分。如果我想根据我所在的视图显示不同的内容 - 我该怎么做?
<body>
<p>[<%= yield :menu %>]</p>
<%= yield %>
</body>
</html>
我刚刚学习 Rails,对于这些愚蠢的问题,我深表歉意。此外,我不仅对解决方案感兴趣,而且对最佳实践的想法感兴趣。
【问题讨论】:
-
bjg 有正确答案,如果您想找到更多示例,请查找 yield :sidebar implementations。
-
啊-我可以看到 yield :sidebar 现在做了什么。我想我想知道如何渲染局部。我会更新问题。
-
已将 "menu" %> 添加到我的 application.html.erb 文件中,并将 _menu.erb 添加到 "views\layouts" 但它正在寻找部分查看每个控制器的文件夹。如何让它寻找父部分?
-
好的 - 我明白了。我需要将部分处理为 "
"layouts/menu" %>
" 这让我想到了最佳实践。通用菜单最好放在哪个文件夹中? -
对于这种内容我使用
app/views/shared文件夹。
标签: ruby-on-rails