在Mongoid中Upsert

时间:2012-11-11 02:17:02

标签: ruby mongodb mongoid upsert

在Mongoid中是否有内置的方法来进行upsert(如果不存在则插入)?或者我应该先检查一个项目是否存在,然后才进行插入/更新?

1 个答案:

答案 0 :(得分:3)

Mongoid中已经有一个内置的upsert方法

  

Model#upsert在文档上执行MongoDB upsert。如果   文档存在于数据库中,它将被覆盖   内存中文档的当前属性。如果文件没有   存在于数据库中,它将被插入。请注意,这只会运行   {before | after | around} _upsert回调。

取自http://mongoid.org/en/mongoid/docs/persistence.html