私もNode-私が最もよく知らない-記事/本/チュートリアルがこれに関連している場合-それはさらに役立つだろう)も使用しています。
私は主にMySQLのバックグラウンドを持っています-このAPIでは、すべてのデータがJSONとして提供されるため、一見すると、Mongoを使用することは非常に理にかなっています(私は間違っている可能性があります)。私が頭を包むことができなかった1つの重要な点は、リレーショナルモデルです。 e.b. _Object has many Assets
_。
ほとんどの人が精通しているいくつかの例を使用するために、私が次のようなことをしようとしていると仮定しましょう:
次のように、コールバックをアセット内に保存するのと同じくらい簡単ですか?:
_Photo {
__id: 5,
content: '...',
gallery_id: 9
}
_
そして、.find({ gallery_id: 9 })
?
私はこれがうまくいくことを知っていますが、それがベストプラクティスですか?私はvery Document Databasesの新人であり、この特定のトピックについてはあまり見ていません。
偶然にも、私はNodeとMongoDBを使用して新しいアプリケーションを検討しています。
私は過去にMongoDBを軽く使用しており、 MongoDBドキュメントデータモデリング が優れた出発点であることがわかりました。親に子を直接埋め込むのではなく、参照を利用することを選択した場合、説明する方法、参照を親に保存し、2番目の検索を使用して参照項目を取得する方法は、それを行うのに最適な方法です。オブジェクト。
ただし、これを行うにはいくつかのより良い方法があるかもしれません。 Mongoose をObject Document Mapper(ODM)として使用することを検討してきました。これは、Node ドキュメント で公式にサポートされているODMです。
populateを使用した疑似結合など、アプリケーション内でかなり複雑なモデルを構築している場合は特に、いくつかの便利な機能を提供します 関数。母集団機能は、参照を管理するためのより構造化されたアプローチを提供し、親と子の検索を1つのステップで可能にします。