Ответ 1
<% if positions.any?{|position| !position.hidden} %>
...
<% end %>
Используя метод any?
Следующий код работает, но можете ли вы сказать, правильно ли это сделать?
У меня есть массив объектов Position, и я хочу проверить, содержит ли он объект, у которого атрибут "hidden" имеет значение "false":
<% if positions.collect{|position| position.hidden}.include?(false) %>
...
<% end %>
<% if positions.any?{|position| !position.hidden} %>
...
<% end %>
Используя метод any?
if positions.any? {|position| not position.hidden}
вы также можете использовать метод all?:
<% unless positions.all? {|position| position.hidden} %>
...
<% end %>