0

我有一个引用集合 projectdetails 的模板 (tmpl1),在下面的代码中,我可以成功地显示 {{detailname}} 什么是基于 collectiondata projectdetails.detailname 但现在我还需要显示项目中的项目名称。 name 我确实在 projectdetails.projectId 中保存了 project._id 我现在如何定义一个像 {{projectName}} 这样的手栏来显示项目名称。我试图在 projectdetails.js 中将其定义为助手,但没有成功。有人可以添加一个代码片段来解释如何定义把手以及如何检索数据吗?

<template name="tmpl1">
<div id="example" class="panel">
    <ol class="breadcrumb">
        <li><a href="/"><i class="fa fa-home"></i> Start</a></li>
        <li><a href="/dashboard"><i class="fa fa-cubes"></i> Projekte</a></li>
        <li><a href="{{pathFor 'details'}}"><i class="fa fa-cogs"></i> Details</a></li>
        <li class="active">{{detailname}} {{projectName}}</li>
    </ol>
</div>

4

1 回答 1

1

您可以添加一个帮助器projectName来连接这两个集合。

您的模板的上下文似乎是一个“项目详细信息”文档,因此在projectName帮助器内部,this.projectId应该是项目文档的 id。假设集合被调用Projects并且每个项目都有一个name字段,代码应该如下所示:

Template.tmpl1.helpers({
  projectName: function() {
    var project = Projects.findOne(this.projectId);
    return project && project.name;
  }
});
于 2015-03-23T21:48:37.763 回答