我正在使用 CollectionFS 来允许图像上传。图片上传需要属于特定的posts
. 我按照文档中的步骤 -在对象中存储 FS.File 引用- 但是,我很难显示相关帖子的图像。
当前post
使用引用 image._id 的 postImage 保存 - 这部分工作正常。但是,我不确定如何显示实际照片,因为它需要从images
集合中获取照片(post
集合只是保存一个 ID 以供参考)。
post-list.html
<template name="postList">
<tr data-id="{{ _id }}" class="{{ postType }}">
...
<td><textarea name="postContent" value="{{ postContent }}"></textarea> </td>
<td>{{ postImage._id }} </td> // This currently displays the correct image._id, but I would like to display the image,
<td><button class="delete tiny alert">Delete</button></td>
</tr>
</template>
post-list.js
Template.postList.helpers({
posts: function() {
var currentCalendar = this._id;
return Posts.find({calendarId: currentCalendar}, {sort: [["postDate","asc"]] });
}
});
post-form.js - 此表单创建一个新的帖子和图像。Image._id 保存到 Post.postImage。
Template.postForm.events({
// handle the form submission
'submit form': function(event) {
// stop the form from submitting
event.preventDefault();
// get the data we need from the form
var file = $('.myFileInput').get(0).files[0];
var fileObj = Images.insert(file);
var currentCalendar = this._id;
var newPost = {
...
calendarId: currentCalendar,
owner: Meteor.userId(),
postImage: fileObj,
};
// create the new poll
Posts.insert(newPost);
}
});