我创建一个简单的rails应用程序来修改现有的mongo数据库中的数据。我使用mongoid进行交互,并且可以很好地读取/销毁对象。mongoid update_attributes改变数据类型
问题出现的是我的mongo文档有一个'节点',它是一串键值对,因记录而异。我使用的是标准轨
MongoObject.find(BSON::ObjectId('ABC1234567890'))
=> #<MongoObject _id: ABC1234567890, node: {"totallogins"=>11, "id"=>"logIns"}>
形成这样才能使后期数据的模样来更新值:当我加载像这样的记录
{"commit"=>"Edit", "utf8"=>"✓", "id"=>"ABC1234567890", "mongo_object"=>{"node"=>{"totallogins"=>"12", "id"=>"logIns"}}
如果我再做:
@mongo_object.update_attributes(params[:mongo_object])
这可以工作,但会将“totallogins”的数据类型从int更改为字符串,因为发布数据是字符串。
现在积极的记录处理这个本身,但我需要一个解决方案,将与mongoid一起工作。
任何想法我可以做到这一点?