如何从Meteorjs中的gridFS获取图像

时间:2015-05-04 17:42:22

标签: mongodb meteor gridfs

我在MeteorJS中使用了gridFS包。

系统的作用是上传带有图像标题,类别和价格的产品。这将保存在产品集合中。

使用模板帮助程序,我可以从数据库中获取产品,其标题为{{title}},价格为{{price}}。但是我很难使用产品文档中的参考来获取图像。

任何人都可以帮助我吗?

var activeTab = this.$tabs.tabs("option", "active");
_this.$tabs.find(">div")[activeTab]


    <template name="product">
        <div class="small-6 medium-3 columns end">
                <div class="product-container">
                    <div class="image-container">
                        {{#with image}}
                            <img src="{{this.url}}" class="product-image" alt="" />
                        {{/with}}
                    </div>
                    <div class="product-details">
                        <div class="product-title">
                            <a href="/productpage">{{title}}</a>
                        </div>
                        <div class="product-price">
                            {{price}}
                        </div>
                        <div class="product-buttons">
                            <span class="icon-heart"></span>
                            <span class="icon-repost"></span>
                            <span class="icon-plus"></span>
                        </div>
                    </div>
                </div>
            </div>
    </template>


    <template name="home">
    {{#each products}}
        {{> product}}
    {{/each}}
    </template>

1 个答案:

答案 0 :(得分:3)

您可以像这样在productImages集合上存储引用。

this

这是相同的插页,但更清洁一点

现在您可以像这样使用帮助器和{{#each products}} {{title}} {{price}} {{#with image}} IMG URL:{{this.url}} <img src="{{this.url}}" /> {{/with}} {{/each}} 上下文。

<强> HTML

Template.example.helpers({
  products:function(){
   return Products.find()
  },
   image:function(){
   return productImages.findOne({'metadata.productId':this._id})
   }
})

<强> JS(助手)

requestSync()