Это попытка загрузки и отображения изображений с помощью 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');
}
Большая часть этого скопирована со страницы github collectionFS, но по-прежнему не показывает никаких изображений. Вот как это выглядит в моей БД после загрузки изображения:
Теперь, что не так с этим? Я все еще не вижу никаких изображений.