为什么会出现此错误?
我可以在show.html.erb中使用javascript_include_tag
和content_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 %>
答案 0 :(得分:3)
它应该工作。请确保yield
部分中的<head>
:
<head>
...
<%= yield :head %>
</head>
然后
<% content_for(:head) do %>
<%= javascript_include_tag "refresh_chat.js" %>
<% end %>
答案 1 :(得分:2)
您可能不想在部分中输出content_for块(<% content_for ...
)。 content_for(:head)
也不是一个神奇的功能。如果你想把它的内容放到头脑中,你必须在你的布局中做这样的事情:
<head>
...
<%= yield(:head) if content_for?(:head) %>
</head>
答案 2 :(得分:0)
也许这是一个错字,但我认为你应该在content_for行中使用&lt;%而不是&lt;%=