Meteor:检索 collections 内的图像

Meteor: Retrieving images within collections

我正在写信给这个 collection:

GiftCards = new Mongo.Collection('giftcards');

GiftCards.attachSchema(new SimpleSchema({
    cardType: {
        type: String
    },
    cardValue: {
        type: Number,
        defaultValue: 100
    },
    fileId: {
        type: String,
        autoform: {
            afFieldInput: {
                type: "fileUpload",
                collection: "Images"
            }
        }
    }
}));

Images = new FS.Collection("images", {
    stores: [new FS.Store.FileSystem("images", {path: "public/uploads"})]
});

使用 AutoForm 制作的表格。

 {{> quickForm collection="GiftCards" id="giftCardsForm" type="insert"}}

数据已写入,但我找不到显示与 collection 中每个文档关联的图像的方法......我只有 id(在 fileId 中)而没有找不到正确发布图像及其引用的特定文档的方法...

您的 GiftCards 集合似乎包含对 Images 集合的单个外键引用 fileId。这实际上就像 SQL 一样,Images 集合的主键用作 GiftCards 中的外键。

现在您想显示一张礼品卡及其相关的单张图片。

<template name="showOneGiftCard">
  Type: {{type}}, value: {{value}} <img src={{url}}/>
</template>

然后你需要一个助手来return图像的url:

Template.showOneGiftCard.helpers({
  url: function(){
    var img = Images.findOne(this.fileId); // 'this' is the data context of one GiftCard
    return img && img.url(); // will return undefined if there's no attached image
  }
});