2

なぜこのエラーが発生するのですか? show.html.erb で使用
できますか? 内にjsをロードする行を入れたいjavascript_include_tagcontent_for(:head)
<head>...</head>

を入れる<%= content_for(:head) do %>と、「refresh_chat.js」をロードする行が表示されません。
を削除する<%= content_for(:head) do %>と、「refresh_chat.js」をロードする行が表示されますが、表示されません<head>

ビュー/投稿/show.html.erb

1. <%= content_for(:head) do %>
2.   <%= javascript_include_tag "refresh_chat.js" %>
3. <% end %>   
4

3 に答える 3

3

それはうまくいくはずです。セクションで次のことを確認yieldしてください。<head>

<head>
  ...
  <%= yield :head %>
</head>

その後

<% content_for(:head) do %>
  <%= javascript_include_tag "refresh_chat.js" %>
<% end %>
于 2013-01-10T12:56:13.350 に答える
3

<% content_for ...部分的にcontent_for ブロック ( ) を出力したくない場合があります。またcontent_for(:head)、魔法の機能などではありません。その内容を頭に入れたい場合は、レイアウトで次のようにする必要があります。

<head>
  ...
  <%= yield(:head) if content_for?(:head) %>
</head>
于 2013-01-10T12:58:27.077 に答える
0

<% content_for(:head) do %>の代わりに を使用<%= content_for(:head) do %>して、コンテンツがビューではなく<head>.

于 2013-01-10T12:53:23.033 に答える