J'essaie d'écrire un exemple d'application en utilisant Ruby on Rails et le mappeur Mongoid.Mongoid créer de nouveaux utilisateurs
Pour une sorte de test, je veux écrire 1000 Testusers dans MongoDB ...
Avec le code bolow MongoId n'est pas capable d'écrire uid uniques. Dans ma console de rubis j'ai eu le bon numéro pour le compteur mais pas pour l'uid.
Est-ce que quelqu'un sait ce que j'ai oublié?
class User
include Mongoid::Document
include Mongoid::Timestamps
def self.create_users
(1..1000).each do |f|
user = User.new(uid: f.to_s, first_name: "first_name", last_name: "last_name", e_mail: "e_mail")
user.save!
puts f
puts user.uid
end
end
field :uid, :type => String
field :first_name, :type => String
field :last_name, :type => String
field :e_mail, :type => String
field :messages, :type => String
attr_accessible :first_name, :last_name, :e_mail
validates_presence_of :uid, :first_name, :last_name, :e_mail
validates_uniqueness_of :uid
has_many :messages
end
oui merci, mais ce n'est certainement pas le genre d'index que je veux utiliser ... par exemple: 4f08d13945a36b20370048bf est l'identifiant du dernier utilisateur que j'ai inséré ... merci pour votre réponse, mais savez-vous pourquoi cela se produit? ? – user934801
Que voulez-vous dire par "pas le genre d'index que je veux utiliser." ? MongoDb utilise le type ObjectId comme "clé primaire" de ses "enregistrements", donc MongoId utilise le même type. – ema