0

これは、gridfs を使用して画像をアップロードして表示する試みです。

これは、サーバーとクライアントの両方に配置されます。

var imageStore = new FS.Store.GridFS("images", {});
Images = new FS.Collection("images", {
  stores: [imageStore],
  filter: {
    maxSize: 6048576 // in bytes
  }
});

Images.allow({
  insert: function () {
    return true;
  },
  update: function () {
    return true;
  },
  download: function () {
    return true;
  }
});

テンプレート:

<template name="imageView">
    <div class="imageView">
        {{#each images}}
        <div>
            <img src="{{this.url store='images'}}" alt="" class="thumbnail" />
        </div>
        {{/each}}
    </div>
</template>

このテンプレートのヘルパー:

Template.imageView.helpers({
  images: function () {
    return Images.find(); // Where Images is an FS.Collection instance
  }
});

画像コレクションを公開しています:

Meteor.publish("images", function () {
  return Images.find({});
});

私は自分のルートでこれらの画像をサブスクライブします:

waitOn: function () {
  return this.subscribe('images');
}

このほとんどは、collectionFS github ページからコピーして貼り付けたものですが、それでも画像は表示されません。これは、画像をアップロードした後、DB でどのように見えるかです。

画像1 画像 2 画像 3

これの何が問題なのですか?私はまだ画像を見ていません。

4

1 に答える 1