我正在学习Meteor,我正在为练习目的构建一个非常基本的应用程序。 我刚刚安装了Collection FS,我使用cfs:filesystem上传文件。 我有一个名为todos witch的集合,其中包括以下字段:
"files" : [ "/cfs/files/files/HPxaJrEbvNjcnmA6m/files?store=files", "/cfs/files/files/jfKua2BszyfqiKYYu/files?store=files" ]
插入是通过服务器端的方法完成的:
'addFiles':function(id,url){
todos.update(id, {
$push: {files:url}
});
如何迭代这些以将它们放入我的模板中的网址?
我在模板中尝试的是:
{{#each todos}}
{{#each files}}<a href="{{files}}" target="_blank"> file</a>{{/each}}
{{/each}}
但这仅仅呈现<a target="_blank"> file</a>
如果文件对象没有任何值,我不想显示任何网址。
我怎么能这样做?
答案 0 :(得分:1)
我假设您正在订阅todos
集合并有帮助:
Template.NAME.helpers({
todos : function(){
return todos.find();
}
})
在模板NAME中试试这个:
{{#each todos}}
{{#each this.files}}
<a href="{{this}}" target="_blank"> file</a>
{{/each}}
{{/each}}
如果files
为空,则不会显示任何内容。