让以下内容抛出错误:
<% @foo.each do |foo| unless @foo.nil? %>
<% end %>
任何方法都可以在同一条线上同时获得条件和块?
答案 0 :(得分:1)
IMO清理器使@foo成为一个空列表,这是Rails查找器通常会发生的事情。
或者将循环包裹在局部中,并在主线模板中使用条件。
答案 1 :(得分:1)
在那里贴上to_a
:
<% @foo.to_a.each do |foo| %>
<% end %>
在to_a
上调用nil
会为您提供一个空数组,在数组上调用to_a
会为您提供一个数组。