Check if any of multiple conditions are true in Ruby
问题 I have the following Ruby conditional: <% if can? :read, %w(policy journey crash user).map(&:to_sym) %> Which I want to translate to: if the user has read permissions for any of the resources in the array. However it always returns false. How can I fix it? I don't want to do: if can? :read, :policy || can? :read, :journey || etc... 回答1: Sure you can. Enumerable#any? is exactly what you're looking for: <% if %i(policy journey crash user).any? { |action| can? :read, action } %> The above will