尝试组合查询的项目,但有时单个查询会生成nil,空数组或两者都有。
@items = relation_1 + relation_2 + relation_3
@items.shuffle!
我认为这将是解决方案:
@items = [relation_1, relation_2, relation_3].compact.flatten
Compact删除nil,但flatten删除其他所有内容而不是空数组。还有其他解决方案吗?
答案 0 :(得分:2)
如果这是一个rails应用程序,你可以这样做:
@items = [relation_1, relation_2, relation_3].reject &:blank?
答案 1 :(得分:0)
尝试以下方法:
@itmes = [relation_1, relation_2, relation_3].flatten.select(&:present?)