2

Node.js や Mongo などに取り組もうとして、小さな製品システムを構築しています。私は、複数のテーブル、eav、または完全に適合しない他の MySQL メソッドを使用する代わりに、異なるタイプの製品を同じコレクションに格納できる可能性があることから、Mongo に惹かれました。

私はチュートリアルを読んでいましたが、最初は ProductModel のプロバイダーの作成に失敗しましたが、誰かが Mongoose を使用するよう提案しました。

ただし、Mongoose の問題は、モデルごとにスキーマを設定する必要があるようです。私の最初のアイデアは、製品にはtitletype属性が必要だということでした。次にtype、製品全体の構造を決定します。たとえば、dvd製品にはディレクターがあり、t-shirt製品にはディレクターがなく、サイズが異なる場合があります。

Mongoose でこの種の構造を実装することは可能ですか? 製品タイプごとにスキーマを提供すると、それらを同時に照会することはできないと理解していますか? 異なるスキーマは異なるコレクションを意味しますか? - よくわかりませんでした。

任意のヘルプとガイダンスをいただければ幸いです。DB 処理を自分で作成する代わりに、フレームワークを使用できるようにしたいと考えています (ただし、最初は何をする予定でしたが、他の誰かが既に私よりも優れていた場合:))

4

1 に答える 1

0

Mongoose には、あなたの場合に非常に役立つスキーマレス型がありますが、最適なソリューションではない可能性があります。

ProductSchema = 新しいスキーマ ({any: {}});

このオブジェクトで何かを変更した場合は、保存する前に obj.markModified('field-name') でそれを Mongoose に通知する必要があります。

私の提案は、node-mongodb-native の上に独自のラッパーを使用することです。これは、問題なく7〜8か月間本番環境で実行しています。

あなたがそれをチェックアウトできるmongousと呼ばれる別のライブラリがあります。

于 2012-05-30T17:52:48.307 に答える