例
次のような投稿用とラベル用の 2 つのコレクションがあります。
Post {
"_id": "WZTEGgknysdfXcQBi",
"title": "ASD",
"labels": {},
"author": "TMviRL8otm3ZsddSt",
"createdAt": "2016-01-14T08:42:42.343Z",
"date": "2016-01-14T08:42:42.343Z"
}
Label {
"_id": "9NCNPGH8F5MWNzjkA",
"color": "#333",
"name": "Grey Label",
"author": "TMviRL8otm3ZsddSt"
}
私が達成したいのは、投稿に複数のラベルを付けることです。
問題は、投稿にラベル データを挿入できないことです。新しい投稿を追加するためのテンプレートがあり、そこでラベルを繰り返しています。次に、ヘルパーで、チェックされているラベルを確認して配列に保存しますが、その配列を Posts コレクションに挿入できません。
'submit .add-entry': function(event) {
var title = event.target.title.value;
var description = event.target.description.value;
var checkedLabels = $('.label-checkbox:checked');
//initiate empty array
var labelsArray = [];
//go over the checked labels
for(i = 0; i < checkedLabels.length; i++){
var label = checkedLabels[i].value;
// store ids into array
labelsArray.push(label)
};
Posts.insert({
title: title,
description: description,
labels: labelsArray
});
Q1:すべてのタグ データを挿入する必要がありますか、それとも ID だけがその ID に基づいてタグ コレクションから詳細を取得する必要がありますか?
Q2:ラベルの配列を投稿に挿入するにはどうすればよいですか? オブジェクトが必要なため、上記のコードは機能しません
Q3コレクション間のこのような関係を実現する最善の方法は何ですか?