sql >> データベース >  >> NoSQL >> MongoDB

マングースの関係と外部キーを理解する

    私はまだNode、Mongoose、Mongoを初めて使用しますが、少なくともあなたの質問の一部に対処できると思います。 :)

    あなたの現在の方法は私が最初にやろうとしたのと同じです。基本的に、これと非常によく似た方法で保存されます(CoffeeScriptがわからないため、JSで記述されています):

    var todoListSchema = new mongoose.Schema({
        name: String,
        todos: [{
            name: String,
            desc: String,
            dueOn: Date,
            completedOn: Date
        }]
    });
    

    後で私が探していたこの方法を見つけました。あなたが意図していたことだと思います:

    var todoListSchema = new mongoose.Schema({
        name: String,
        todos: [{
            type: mongoose.Schema.Types.ObjectId,
            ref: 'Todo' //Edit: I'd put the schema. Silly me.
        }]
    });
    

    これにより、ObjectIdの配列が格納され、Query#populateを使用して読み込むことができます。 マングースで。

    技術的な意味はわかりませんが、別々にしておくと脳内でより理にかなっているので、それをやっています。 :)

    編集:ここに役立つかもしれないいくつかの公式ドキュメントがあります: http://mongoosejs.com/docs/ Populate.html




    1. C ++からMongoDBへの接続にアクセス違反があるのはなぜですか?

    2. MongoDBレプリカセットのセットアップ

    3. 他のテキストのテキスト検索クエリは常に結果を返しませんか?

    4. Mongoは、親キーが不明な値を検索します