【发布时间】:2012-12-08 13:54:02
【问题描述】:
我有以下原始 mongo 查询,我想直接在我的 Rails 控制器中执行:
db.user_places.update({place_id: destroy_model.id}, {$set: {place_id: keep_model.id}}, false, true)
对于后续,我使用ActiveRecord::Base.connection.execute(sql) 来执行我的 sql 查询。
使用 MongoDB/mongoid gem 的等效方法是什么?我试过关注How to fire raw MongoDB queries directly in Ruby,但我没有使用 MongoMapper。
谢谢。
编辑:我对这个问题的解决方案是从 Mongoid 文档中运行以下内容:
UserPlace.where(place_id: destroy_model.id).update_all(place_id: keep_model.id)
这将生成上面的原始 mongo 查询并以 ActiveRecord 方式执行。
【问题讨论】:
标签: ruby-on-rails ruby ruby-on-rails-3 mongodb mongoid3