MongoidのFxxkなdelete_allの実装に気をつけろ!
ruby-1.9.2-p180 :001 > User.delete_all(:name => "naoty") #=> 200 # 全消去…だと…!?まじ、Fucx!
ruby-1.9.2-p180 :002 > User.delete_all(conditions: { name: "naoty" }) #=> 1 # 条件に合うドキュメントのみ削除 ruby-1.9.2-p180 :003 > User.where(:name => "naoty").delete_all #=> 1 # こちらの方が直感的で安全かも
- いつもどおりのノリでModel.delete_allを使うと全消去するので、かなり注意!
参考
http://mongoid.org/docs/persistence/standard.html#delete_all
http://mongoid.org/docs/querying/modification.html