【问题标题】:"where" clause in template helper模板助手中的“where”子句
【发布时间】:2016-08-24 05:04:43
【问题描述】:

首先大家好,

我是 Meteor 的新手,只是一个爱好开发者。在过去的几天里,我确信很简单的事情一直困扰着我,我将尝试通过一个简单的例子来解释我的问题。

让我们考虑一个在线论坛,其中我有多个论坛类别,并且每个类别中都有多个论坛。

我希望我的模板中的最终结果类似于:

{{#each category}}
  {{#each forum where forum.category=category}}
    {{nameForum}}
  {{/each}}
{{each}}

这将列出类别以及其中每个类别的不同论坛。

我的问题是: 解决此类问题的最佳方法是什么?意义: 论坛应该是模式中类别的子元素,但是 shcema 似乎有点复杂。 论坛和类别应该是分开的模式,但在同一个集合中,但是我怎么能在模板中的“哪里”做到这一点? 我在这个问题上是否有一个完全愚蠢的方法,我错过了教程中的一些内容?

提前感谢您的回复。

伊沃

【问题讨论】:

    标签: templates meteor collections schema where


    【解决方案1】:

    做这样的事情

    myTemplate.html

    {{#each getCategories}}
      {{#each getForum categoryName}}  // Assuming that in your category db you have categoryName field
        {{nameForum}}
      {{/each}}
    {{each}}
    

    myTemplate.js

    Template.myTemplate.helpers({
        getCategories: function() {
            return Category.find({});
        },
        getForum: function(category) {
            return Forum.find({"category": category});
        }
    })
    

    基本上你在模板助手中移动检索论坛的逻辑

    【讨论】:

    • 感谢您的回复。我认为您的回复中缺少的是我仍然必须在模板中指定“运动”类别。理想情况下,我希望它自动循环遍历所有类别。像这样的工作:(我现在无法从我所在的位置尝试):{{#each getForum category.name }}?
    猜你喜欢
    • 1970-01-01
    • 2016-03-02
    • 1970-01-01
    • 2015-10-23
    • 2015-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-14
    相关资源
    最近更新 更多