1

2つのスキーマの間にいくつかの関係が必要です。ユーザーとコメントの関係のように。これは私が試したコードです。mongooseとmongodbで2つのスキーマを使用したrealationshipの追加

const user = new Schema({ 
    uname:String, 
    email:String, 
    password:String, 
    created:{ type: Date, default: Date.now } 
}); 

const comment = new Schema({ 
    user:{ 
     type : Schema.Types.ObjectId, 
     ref : 'user' 
    }, 
    comment:String, 
    created:{ type: Date, default: Date.now } 
}); 

データをコメントに保存するにはどうすればよいですか?コメントのあるユーザーのIDを渡す必要がありますか?または私は一意の値(電子メールまたはユーザー名)を渡すことができます。どのようにデータを渡し、コメントデータを取得する? ImはNoSQLデータベースには全く新しいものです。

+0

これは、参照を保存する例です。http://mongoosejs.com/docs/populate.html –

答えて

0

コメントのスキーマにuserIdのキーを文字列として作成すると、userIdはユーザーの_id(インスタンス作成時に作成された一意のID)になります。

すべてのコメントインスタンスの作成では、userIdはpassで、そのコメントはその特定のユーザーに関連付けられ、userIdをクエリに渡すことで見つけ出すことができます。

言うことができます:

user1 : 
     _id : abc12amcne345ffc 
     uname: 'hello', 
     email: '[email protected]', 
     password: 'acd224', 
     created: somedate 

を、コメント

Comment : 

    userId: ' abc12amcne345ffc ', 
    comment: 'hello', 
    created: somedate 

のために、それは私が考えるスタートのためのシンプルな構造です。

関連する問題