MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Mongoide Finder funktionieren nicht?

Okay, das ist also ein Teil dessen, was Mongoid für Neuankömmlinge irritierend macht. Die Leute erwarten, dass Methoden wie User.all tatsächlich ein Array zurückgeben, wenn sie wirklich nur das Criteria-Objekt zurückgeben.

Um den syntaktischen Zucker von verkettbaren Methoden und anderen ausgefallenen Abfragemechanismen bereitzustellen, scheint Mongoid ein Lazy-Loading-Ding zu verwenden.

Sie können Folgendes tun:

#array index
User.all[0]

#first/last
User.all.first

#each over things, print out all the users
User.all.each {|u| p u}

#edit, I forgot to include this, which is probably what you really want
#this spits out an array
User.all.to_a

Es macht es schwierig, schnell zu überprüfen, ob die Dinge für Neulinge von ActiveRecord funktionieren, wo User.all nur ein Array zurückgibt.