【问题标题】:ruby mongoDB insert_many - success message but no insertsruby mongoDB insert_many - 成功消息但没有插入
【发布时间】: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

有什么建议吗?

【问题讨论】:

标签: ruby-on-rails ruby mongodb


【解决方案1】:

我终于弄清楚了这个问题。它是集合本身。我需要做的就是获取集合,然后我可以应用 MongDB Ruby Driver 方法:

user_collection = User.collection

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-12-04
    • 2021-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-19
    • 2019-03-15
    相关资源
    最近更新 更多