这是尝试使用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页面粘贴的副本,但它仍然没有显示任何图像。这是它在上传图像后在我的数据库中的外观:
现在这有什么问题?我还没有看到任何图像。
答案 0 :(得分:0)
您的商店名称为registrationStorage
,您的收藏名称为registrations
。尝试将第二个代码段的第二行更改为:
<img src="{{this.url store="registrationStorage"}}" /><br />