我正在使用CollectionFS上传图片,但问题是我希望我的用户只能上传一张图片并随后更改它(上传新的图片)。
我已经实现了检查是否已经上传了一张图片的部分。但问题是我无法更改已经存在于数据库中的图片,以下是我用于插入新图片的代码:
'change .myFileInput': function(event, template) {
FS.Utility.eachFile(event, function(file) {
var newFile = new FS.File(file);
newFile.metadata = {
createdBy:Meteor.userId(),
}
Imagess.insert(newFile, function (err, fileObj) {
if (err){
// handle error
} else {
// handle success depending what you need to do
var currentUserId = Meteor.userId();
var imagesURL = {
"profile.image": "/cfs/files/images/" + fileObj._id
};
Meteor.users.update(currentUserId, {$set: imagesURL});
}
});
});
我不知道如何将Imagess.insert更改为Imagess.update,我已经阅读了Meteor文档,但找不到如何操作的方法。是否有人能提供一种方法或一些文档,让我学会如何做呢?
谢谢!
update
,你刚刚不是写了一个更新语句Meteor.users.update(currentUserId, {$set: imagesURL});
吗?你能更具体地说明你想做什么吗?如果Imagess
是一个mongo集合,你可以像对Meteor.users
所做的那样做同样的事情。 - Archy Will He 何魏奇