【发布时间】:2020-07-31 20:26:15
【问题描述】:
我正在尝试使用 Ruby Driver of MongoDB 执行 insert_many,但它不起作用。任何帮助将不胜感激。
这是我的示例模型:
class User
include Mongoid::Document
include Mongoid::Timestamps
field :message
end
MongoDB Rails 代码:
client = Mongo::Client.new('mongodb://127.0.0.1:27017/development')
collection = client[:user]
u = Hash.new
u['message'] = 'hi'
documents = []
documents << u
result = collection.insert_many(documents)
#<Mongo::BulkWrite::Result:0x00007fa6ed4e99b8 @results={"n_inserted"=>1, "n"=>1, "inserted_ids"=>[BSON::ObjectId('5e9ac4c6c40dc6a955465a8f')]}>
当我验证插入时,它似乎可以工作,但是当我查询模型时,没有数据:
result
#<Mongo::BulkWrite::Result:0x00007fa6ed4e99b8 @results={"n_inserted"=>1, "n"=>1, "inserted_ids"=>[BSON::ObjectId('5e9ac4c6c40dc6a955465a8f')]}>
User.count
0
有什么建议吗?
【问题讨论】:
-
提示:使用文字
u = { 'message' => 'hi' }和documents = [u]代替任何文字。 -
您没有正确使用它。查看文档:docs.mongodb.com/mongoid/current/tutorials/…
标签: ruby-on-rails ruby mongodb