我有以下数组:
@unregistered_users = ['my@email.com', 'your@email.com', ...]
现在,我想为每个数组元素创建一个文档:
@unregistered_users.each do |email_address|
Model.create(email: email_address, user: self.user, detail: self)
end
但它只创建一个文档(数组的第一个元素)。根本不创建其他数组元素。为什么?
我们正在使用 Ruby 1.9.3-p385、Rails 3.2.12、MongoID 3.0.0 和 MongoDB 2.2.3
更新#1
因此,我们有一个_id
使用自定义随机标记的自定义字段SecureRandom.hex(64).to_i(16).to_s(36)[0..127]
。
在我删除它之后,它可以正常工作,但是使用常规的 mongo ID(这不是我们想要的)。
更新#2
这就是生成令牌的方式:
class Model
include Mongoid::Document
include Mongoid::Timestamps
...
field :_id, default: SecureRandom.hex(64).to_i(16).to_s(36)[0..127]
...
index( { _id: 1 }, { unique: true } )
end