【问题标题】:Document updates using mongo-ruby-driver?使用 mongo-ruby-driver 进行文档更新?
【发布时间】:2023-03-25 02:57:01
【问题描述】:

假设如下:

irb> x
irb> => {"_id"=> 123456, "welcome"=>"Hi!", "welcome2" => "Enjoy your stay!"}
irb> coll.class
irb> => Mongo::Collection

如何使用原始的mongo-ruby-driver通过重写方法和原子更新方法来更新x对应的文档? (见http://api.mongodb.org/ruby/current/file.TUTORIAL.html#Updating_a_Document

【问题讨论】:

    标签: ruby-on-rails ruby mongodb mongodb-ruby nosql


    【解决方案1】:

    给定你的示例输出,如果你想使用重写方法,它会是这样的:

    coll.update({"_id" => x["_id"]}, x)
    

    或者如果你想原子地改变一个值,它会是这样的:

    coll.update({"_id" => x["_id"]}, {"$set" => {"welcome" => "Hello There"}})
    

    【讨论】:

    • 另外,如果你想更新多个文档:coll.update({<search criteria>}, {"$set" => {<update>}}, {:multi => true }) 只是想我会添加它,因为我在任何地方都找不到它。
    猜你喜欢
    • 2019-03-12
    • 1970-01-01
    • 2015-11-18
    • 1970-01-01
    • 2021-04-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多