你应该真的指出你现在的代码是什么样的,所以我们有一个从头开始的参考。然而,这是一个相当简单的任务,所以我已经先行一步,并提供了一个模拟例子:
模板:
{{#each quoteCategories}}
<button class="quote-category" value="{{_id}}">{{title}}</button>
{{/each}}
<ul>
{{#each quotes}}
<li>"{{content}}" — {{author}}</li>
{{/each}}
</ul>
模板事件:
Template.quotesList.events({
'click button.quote-category': function(event) {
var categoryId = $(event.target).val();
Session.set('quote-category-id', categoryId);
}
});
模板助手:
Template.quotesList.helpers({
'quoteCategories': function() {
return QuoteCategories.find({});
},
'quotes': function() {
var categoryId = Session.get('quote-category-id');
if(categoryId) {
return Quotes.find({category: categoryId});
} else {
return Quotes.find({});
}
}
});
你的收藏架构很好。像MongoDB这样的noSQL数据库最好的事情之一是,你可以根据自己的需要真正选择规范化或非规范化。因此,如果您的结构更容易与两个集合一起工作,那么这很好。一般来说,确定数据库结构的最佳方法是针对最重用的应用程序进行优化,因此对于大量读取应用程序(大多数情况下)可以更简单地进行读取,或者对于大量写入应用程序,可以更容易地进行读取(插入,更新)。结构可以根据这些需求而变化。
谢谢,我其实写了几乎完全相同的东西。这比我想象的要简单。 – user2302401 2015-03-31 02:35:04
@ user2302401 Nps,请在得到机会时标记答案正确(勾选)。确定基本知识的好地方是:http://meteortips.com/book/ – 2015-03-31 02:44:15