0

我有两段(大)相同的代码,唯一的区别是,一段以

<% end %> 

作为最后一行,另一行以

<% end # finish loop_x %>

第二个产生了错误:

ActionView::Template::Error (undefined method `html_safe' for nil:NilClass):
    13:       <% flash.each do |key, value| %>
    14:         <div class="alert alert-<%= key %>"><%= value %></div>
    15:       <% end %>
    16:       <%= yield %>
    17:       <%= render 'layouts/footer' %>
    18:       <%= debug(params) if Rails.env.development? %>
    19:     </div>
  app/views/layouts/application.html.erb:16:in '..

但奇怪的是,这个错误只有在 <% end # %> 是页面的最后一行时才会发生。如果我将评论放在页面中途的 end 语句中,则没有错误。并以 <% end %> 结尾可以正常工作。

我正在使用 rails 3.2.3,但这也发生在 3.2.2

4

0 回答 0