我有一个小麻烦返回并显示我正在为一个子文档的标签。 我没有问题添加标签,但是想要把标签上的每个标签的项目。 我根本无法找到的资源,可以帮助我在数组中的子文档内归还物品。 我想,这一切都在那里,我被卡住了帮手 - 基本上写的语法正确的方式“的相关文件(this._id).itemTags.find();”。 :)
噢 - 我剪了很多的HTML和JS的,但是,是的,一切工作正常。 集合是“条”与子文档是“itemTags”,用“itemTags:[]”设置插入过程中。 在我的测试环境,我可以添加“猫”和“狗”的标签,并可以验证它的工作原理是通过检查对象“Items.find()取();”。 但我在努力,以显示它们。
HTML:
<template name="item">
{{#each itemTags}}
<span class="label label-default">{{itemTag}}</span>
{{/each}}
</template>
JS:
Template.item.helpers({
itemTags: function() {
var currentUserId = Meteor.userId();
return Items.find(); // yes, this line is completely wrong, but I'm lost hehe
}
});
Template.item.events({
'submit .add-tag': function(event) {
event.preventDefault();
var itemTag = event.target.text.value;
Items.update(this._id, {$push: {itemTags: itemTag}});
event.target.text.value = "";
return false;
}
});
数据库模式(如我的INSERT命令):
var item = {
itemText: $(e.target).find('[name=itemText]').val(),
createdAt: new Date(),
createdBy: currentUserId,
hard: false,
difficulty: 'easy',
checked: false,
itemTags: [],
};
item._id = Items.insert(item);