Ruby 如何将 Json 字符串直接存入 mongodb?

tangjilong · May 22, 2012 · Last by tangjilong replied at May 22, 2012 · 7110 hits

想要把 Json 字符串直接存入 mongodb,但是报如下错误: /home/tim-tang/.rvm/gems/[email protected]/gems/mongo-1.6.2/lib/mongo/collection.rb:308:insave': undefined method has_key?' for #<String:0x96ffc80> (NoMethodError)

具体代码如下: `#encoding:utf-8 require "crack" require "json" require "mongo"

myXML = Crack::XML.parse(File.read("/home/tim-tang/OFBProductCategory1.xml")) myJSON = myXML.to_json puts myJSON

connection = Mongo::Connection.new("localhost", 27017) db = connection.db("tim-db") coll = db.collection("products") coll.save(myJSON)`

好像是无法产生_id,知道的请指点下,谢谢!

myJSON 是一个字符串。应该 to_hash。

把 myJSON 转换成 hash 可以直接 save

原来用 JSON.parse(myJSON) 就可以了转成 hash 了

You need to Sign in before reply, if you don't have an account, please Sign up first.