Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.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 3 Rails—对activerecord结果的每一行执行逻辑操作_Ruby On Rails 3_Activerecord_Boolean Logic - Fatal编程技术网

Ruby on rails 3 Rails—对activerecord结果的每一行执行逻辑操作

Ruby on rails 3 Rails—对activerecord结果的每一行执行逻辑操作,ruby-on-rails-3,activerecord,boolean-logic,Ruby On Rails 3,Activerecord,Boolean Logic,我有一个模型,它有一个类型为Boolean的列 是否可以“动态”(不迭代所有结果)检索逻辑演算的结果 例如: data = Model.limit(10) # I would like to know if each data.column is true # the result is something to this logic: data[0].column && data[1].column && ... # ..but there is one man

我有一个模型,它有一个类型为Boolean的列

是否可以“动态”(不迭代所有结果)检索逻辑演算的结果

例如:

data = Model.limit(10)
# I would like to know if each data.column is true
# the result is something to this logic: data[0].column && data[1].column && ...
# ..but there is one manner to do this without iterating?
使用主条件:AND、OR、XOR(条件都相同-all AND或all OR,…)


我认为
全部?
就是您要找的。

也许您可以将true视为1,将false视为0。您可以轻松获取总和(列)。如果SUM(column)=Model.count,则表示所有记录的column=true。如果SUM(column)==0,则表示全部为false。您可以轻松地扩展该解决方案以返回两个附加字段,如“真”的数量[1如果为真,则为0如果为假]和“假”的数量[0如果为真,则为1如果为假]。若你们想知道,若所有的都是真的,那个么只需检查错误的数量是否为0etc@mkk如果您也必须从头开始构建模型,那么这是一个很好的解决方案。如果模型已经存在,我认为Ryan BiggThanks Ryan建议的解决方案更好,那就是我正在寻找的。我不知道“全部”的方法
records = Model.limit(10).all
records.all? { |r| r.column? }