是否有某种类型的find_by_sql等效于mongoid,你传递一个mongo查询并从结果中实现Mongoid :: Document s?
我有以下原始 mongo 查询,我想直接在 Rails 控制器中执行:
db.user_places.update({place_id: destroy_model.id}, {$set: {place_id: keep_model.id}}, false, true)
Run Code Online (Sandbox Code Playgroud)
对于续集,我用来ActiveRecord::Base.connection.execute(sql)
执行我的 sql 查询。
使用 MongoDB/mongoid gem 执行此操作的等效方法是什么?我尝试按照如何直接在 Ruby 中触发原始 MongoDB 查询,但我没有使用 MongoMapper。
谢谢。
编辑:我对这个问题的解决方案是从 Mongoid 文档中运行以下命令:
UserPlace.where(place_id: destroy_model.id).update_all(place_id: keep_model.id)
这将生成上面的原始 mongo 查询并以 ActiveRecord 方式执行它。
在使用mongo gem的ruby中,我找不到任何关于如何使用GridFs查找文件名的文档.