2013-07-19 12 views

答えて

2

はい、正しい方法ですが、覚えておいてください。n oコールバックまたは検証が実行されます

また、update_allも条件を受け入れます。この

Foo.update_all({:some_columnn => "1"}, {:some_id => 1}) 
0

オブジェクトをインスタンス化したくない場合は正しいアプローチですが、これはモデルの検証やコールバックを実行しないことを意味します。つまり、SQLの更新コマンドに直接移行します。

Further information

0

あなたはupdate_all

update_all(アップデート、条件= nilを、オプション= {})

だから、あなたがすることができるのAPIに従って、条件を使用することができます。

Foo.update_all(:some_column => '1', :some_id => 1) 
2

As of Rails 4と同様に、条件がもはやupdate_all方法で提供されていないが、代わりに前のコレクションに指定されています。たとえば、

# updates everything, as usual 
Foo.update_all(some_column: '1') 

# update only the specified rows 
Foo.where(some_id: 1).update_all(some_column: '1') 
関連する問題