0

_main_nav.html.erbビュー/レイアウトフォルダーで 呼び出されたパーシャルがあります。これはコンテンツファイルです:

<% content_for :main_navigation do %>
  <h1>Something must here</h1>
<% end %>

私の_header.html.erbファイルでは、yieldコンテンツを挿入していました:

... 
<%= yield :main_navigation %>  
<nav id="utility" class="nav-collapse">
...  

しかし、ホームページにアクセスすると、h1要素が表示されません。どこか間違っていますか?

4

1 に答える 1

2

問題は、現在レンダリングされていないビューからコンテンツを生成しようとしていることです。

あなたがする必要があるでしょう:

_header.html.erb

... 
<%= render "layouts/main_nav" %>
<%= yield :main_navigation %>  
<nav id="utility" class="nav-collapse">
... 

_main_nav.html.erb

<% content_for :main_navigation do %>
  <h1>Something must here</h1>
<% end %>

http://guides.rubyonrails.org/layouts_and_rendering.html#understanding-yield

于 2012-10-24T08:01:50.290 に答える