Ich bin Autor von YiiMongoDbSuite, der Erweiterung, die die MongoDB-Unterstützung im ActiveRecord-Muster sehr ähnlich der SQL-Version ist, die bereits in Core Yii verfügbar ist.
Mein Code wurde ziemlich populär, da er mit der Absicht geschrieben wurde, fast identisch zu sein wie der ursprüngliche Yii Ansatz zu den SQL db's, um die Lernkurve zu verkürzen, die einzigen zwei Hauptunterschiede sind fehlende Beziehungsunterstützung (da es keine solche gibt) Ding in Mongo) und verschiedene Kriterien Objekt.
Ich fand, dass mein Code sehr spaßig und einfach zu benutzen ist, besonders für Mongo-Neulinge, die bereits Yii benutzt haben, aber ich fand / denke auch, dass das ActiveRecord Designmuster nach einigen Monaten der Entwicklung neuer Features und der Verwendung meines Codes nicht mehr existiert eine gute Wahl für dokumentenorientierte DBs und ich denke auch, dass das AR-Muster selbst ein Begrenzer für Mongo True Power ist (dh neue Doktrine hat das AR-Muster selbst in SQL-DBs verlassen).
Meine Frage ist also, welche alternativen Designmuster verwendet werden können, um die volle "Power" von MongoDB / Document-orientierten DBs zu "entfesseln"?
Vielleicht ist das DataMapper -Muster das, was Sie brauchen.
Dieses Muster kann auf verschiedene Arten mit unterschiedlichen Fähigkeiten realisiert werden.
Weitere Erklärungen finden Sie in diesem Buch: Ссылка
Tags und Links php activerecord design-patterns mongodb yii