#ruby-on-rails #ruby #ruby-on-rails-3
#ruby-on-rails #ruby #ruby-on-rails-3
Вопрос:
Есть следующая ошибка:
<% @foo.each do |foo| unless @foo.nil? %>
<% end %>
Есть ли способ получить как условное условие, так и блок в одной строке?
Ответ №1:
Просто вставьте to_a
туда:
<% @foo.to_a.each do |foo| %>
<% end %>
Вызов to_a
on nil
дает вам пустой массив, вызов to_a
array дает вам массив.
Ответ №2:
IMO очиститель, чтобы @foo был пустым списком, что обычно происходит с поисковиками Rails.
Или завершите цикл частичным и просто включите условие в шаблон основной строки.