0
私は、ユーザーがプライベートな会話を持つことができるチャットアプリケーションを開発しています。私はsocketjとmongodbと一緒にnodejsを使用しています。私は、チャットとスキーマのようないくつかのスキーマの間に関係を持つ必要があります。チャットスキーマはスレッド(IDまたは名前)で構成されています。スレッドスキーマは、会話を簡単に取得するためのものです。私は、マングースのモデル間の関係に関連するいくつかの回答を見つけましたが、それがどのように機能するかはあまりよく分かりません。これは私が試したコードです。この種の関係を作成するには?mongooseとmongoDBのスキーマの関係
これは、マングースの人口と呼ばれていますconst message = new Schema({
sender:{
type : Schema.Types.ObjectId,
ref : 'user'
},
message:String,
thread:{
type : Schema.Types.ObjectId,
ref : 'thread'
},
created:{ type: Date, default: Date.now }
});
スレッドスキーマ
const thread = new Schema({
people:[{uname:String}],
created:{ type: Date, default: Date.now }
});
ユーザースキーマ
const User = new Schema({
fname:String,
lname:String,
uname:{type:String,unique:true},
email:{type:String,unique:true,lowercase:true},
password:String,
friends:[{
type : Schema.Types.ObjectId,
ref : 'User'
}]
});