私はメンバーの参照配列を持つGroup Collectionを持っています。 2つのオブジェクトは、次のように相互接続されています。グループに新しいメンバーを追加するときに、Groupオブジェクトのメンバーフィールドを更新する必要がありました。 mongoose
update
オペレータでこれを行うにはどうすればよいですか。mongooseのReference Arrayを更新するには
var MemberSchema = new Schema({
name:{
type:String,
default:null
},
user_id:{
type : Schema.ObjectId,
ref : 'User',
default : null
}
});
var GroupSchema = new Schema({
name:{
type:String,
default:null
},
description:{
type:String,
default:null
},
members:[MemberSchema],
},{collection:"groups"});
ありがとうございます。
更新
私はグループのサンプル文書を追加しました。あなたはこの間違ったをやっている
{
"_id" : ObjectId("586a2e694467c41218b302c3"),
"members" : [
{
"_id" : ObjectId("586a2e694467c41218b302c6"),
"user_id" : ObjectId("58171d75e72bf516f92dcd4e"),
"name" : "Lakmal Kapukotuwa"
},
{
"_id" : ObjectId("586a2e694467c41218b302c5"),
"user_id" : ObjectId("5821807516325e127f59438e"),
"name" : "Prasad Perera"
},
{
"_id" : ObjectId("586a2e694467c41218b302c4"),
"user_id" : ObjectId("586263515356e908de6c899a"),
"name" : "Sadun Prasad"
}
],
"description" : "Des 1",
"name" : "My group",
"__v" : 0
}
はあなたが私たちの新しいメンバーの例リストを表示するには、あなたの質問に[編集]リンクを使用することができますあなたは 'members'配列に追加したいですか?私が集めたことから、メンバオブジェクトでリストを指定している場合、また配列内のオブジェクトがどのように構造化されているかによって、 '$ push'演算子を' $ each'で使う単純なケースかもしれません。あなたが追加したいメンバーの詳細。 @chridam。 – chridam
確かに。私は質問を更新しました。また、迅速な対応に感謝します。 @chridam。 –
はい、$ push演算子で処理できます。私は答えとしてそれを受け入れることができる答えとしてこれを投稿してください。 –