0

我有哈希数组,我想检查所有哈希中都存在的公共字段

@a = current_user.ser.collect{|x| x.team == "sect"}

[true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true]

我使用了收集方法和布尔运算符,所以现在在输出它的给定数组时我想要一个输出,比如整个数组中有 1 个假值,所以它应该只返回假

4

2 回答 2

3

尝试:

current_user.ser.all?{|x| x.team == "sect"}

而且x.team看起来不像哈希表示法。你确定你提供了正确的代码/描述吗?

于 2012-05-03T06:51:19.127 回答
0

您可以执行以下操作:

res = true
current_user.ser.each{|x| res = res & (x.team == "sect")}
于 2012-05-03T07:01:01.857 回答