如何更新特定id的MongoDB表列

时间:2014-03-18 04:51:38

标签: ruby mongodb mongoid

更新MongoDB中的用户表列:

User.update({'_id':'123456'},{$set: {verification_code:'null'}})

当我像

一样通过
User.update(verification_code:'null'})

这适用于一个用户。如果我在数据库上有更多用户,则不会更新

当我像这样使用它时会显示此错误:

 User.update({'_id':'123456'},{$set: {verification_code:'null'}})
  

/home/dileep/Documents/hng_04-03-2014/healthnextgen/app/controllers/verifications_controller.rb:16:语法错误,意外&#39;:&#39;,期待=&gt; User.update({_ id:user_id},{$ set:{verification_code:&#39; null&#39;}})^ / home / dileep / Documents / hng_04-03-2014 / healthnextgen / app / controllers / verifications_controller。 rb:16:语法错误,意外&#39;}&#39;,期待keyword_end User.update({_ id:user_id},{$ set:{verification_code:&#39; null&#39;}})^ < / p>

2 个答案:

答案 0 :(得分:1)

尝试使用:

User.update(
    {_id:"123456"},
    {
       $set: 
            {verification_code:"null"}
    },
    {multi:true}
)

了解更多info

答案 1 :(得分:1)

Mongoid也许?:

User.where(_id: "123456").update(verification_code: "null")

或者是轻便摩托车:

collections[:user].find(
    { _id: "123456" }
).update({ "$set" => { verification_code: "null" }})