Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 组合查询的项目_Ruby On Rails - Fatal编程技术网

Ruby on rails 组合查询的项目

Ruby on rails 组合查询的项目,ruby-on-rails,Ruby On Rails,尝试组合查询项,但有时单个查询会生成nil、空数组或两者 @items = relation_1 + relation_2 + relation_3 @items.shuffle! 我想这就是解决办法: @items = [relation_1, relation_2, relation_3].compact.flatten Compact删除nil,而flatten删除其他所有内容,而不仅仅是空数组。还有其他解决方案吗?请尝试以下方法: @itmes = [relation_1, rela

尝试组合查询项,但有时单个查询会生成nil、空数组或两者

@items = relation_1 + relation_2 + relation_3
@items.shuffle!
我想这就是解决办法:

@items = [relation_1, relation_2, relation_3].compact.flatten
Compact删除nil,而flatten删除其他所有内容,而不仅仅是空数组。还有其他解决方案吗?

请尝试以下方法:

@itmes = [relation_1, relation_2, relation_3].flatten.select(&:present?)

如果这是rails应用程序,您可以执行以下操作:

@items = [relation_1, relation_2, relation_3].reject &:blank?

第一行引发异常,因为
nil
不能与数组组合