私はこれをやろうとしています
User.find([23,45,68,123]).update_all(:is_active => true)
しかし、私は得る:
NoMethodError: undefined method `update_all' for #<Array:0x00000007493778>
正しい構文は何でしょうか? 必要がなければ、それぞれを繰り返し処理したくありません。
私はこれをやろうとしています
User.find([23,45,68,123]).update_all(:is_active => true)
しかし、私は得る:
NoMethodError: undefined method `update_all' for #<Array:0x00000007493778>
正しい構文は何でしょうか? 必要がなければ、それぞれを繰り返し処理したくありません。
find
は配列を返すため、使用できませんupdate_all
。
where
問題を解決するには、 を返すを使用できると思いますActiveRecord::Relation
ので、動作するupdate_all
はずです:
User.where(:id =>[23,45,68,123]).update_all(:is_active => true)
http://apidock.com/rails/ActiveRecord/Relation/update_all
それが役立つことを願っています...