我有这段代码来确定返回的类:
def level_class(projects)
return 'badge-danger' if projects.any?(&:suspicious_content?) || projects.any?(&:tiny_description?)
'badge-info'
end
是否可以“合并” &:suspicious_content?
和&:tiny_description?
?
那是行不通的,但是类似projects.any?(&:suspicious_content? || &:tiny_description?)
这样的东西会很酷!
答案 0 :(得分:2)
“合并”没有意义,因为您的问题的注释已指出。但是,您可以实现与后一种情况几乎相同的事情:
projects.any?{ |i| i.suspicious_content? || i.tiny_description? }
或者,如果您想多次使用块,则可以执行以下操作:
b = lambda{ |i| i.suspicious_content? || i.tiny_description? }
projects.any? &b