如何在空格键#each标签中显示来自两个不同集合文档的数据?

问题描述 投票:0回答:1

我有 2 个 Collection(其中一个是标准 Collection,另一个是 CFS Collection,用于存储我上传的图像):

Products = new Mongo.Collection('products');

Uploads = new FS.Collection('uploads', {
  stores: [new FS.Store.FileSystem('uploads', {path: '~/projectUploads'})]

});

Products 集合中的某些文档具有“product_main_image”字段或键/值对,用于存储存储在 Uploads CFS 集合中的已上传文件的文件名。

在我的页面上我设置了一个助手:

Template.admin_products.helpers({

  products: function(){
    console.log('inside helperproduct');

    return Products.find();
  }

});

在 html 中我有:

{{#each products}}
    {{product_name}}
    {{product_main_image}}
  {{/each}}

但是我想显示上传的文件,就像我使用此代码访问它一样:


{{product_main_image}}

此页面是我使用 
Uploads.findOne({"original.name":product_main_image});

显示所有产品的地方,我还想显示存储在上传 CFS 集合中的每个产品的图像。


这可能吗? 我怎样才能做到这一点? 谢谢...

javascript meteor spacebars meteor-collections
1个回答
2
投票
是的

我怎样才能实现这个目标?

您可以使用

{{#each products}}

的上下文。在

this

这就是

HTML

的外观。 Uploads.findOne()

还有图像助手。

{{#each products}} {{product_name}} {{product_main_image}} {{#with image}} <img src="{{this.url}}" /> {{/with}} {{/each}}

这里有一个快速的 
MeteorPad

展示了如何实现这一点(我使用 2 个虚拟集合,但想法是相同的)

© www.soinside.com 2019 - 2024. All rights reserved.