Nie ma możliwości aktualizacji bieżącego obrazu URL za pomocą FSCollection (w tym przypadku obrazu), sprawdź ten numer Github
, gdzie Raix i Aldeed rozmawiają o przyszłych pracach, takich jak FS.File.updateData()
, ale nie została jeszcze zaimplementowana.
Możliwe obejście będzie to.
Template.example.events({
'click #changeImage':function(event,template){
var message = confirm("Do you wanna change this image?");
if(message == true){
var file = $('#changeImageInput').get(0).files[0],
newFile = new FS.File(file);
newFile.metadata = {
createdBy:Meteor.userId(),
}
var query = Images.findOne({'metadata.createdBy':Meteor.userId()}) //supposing there is only one image if not use a .fetch() and a for instead.
//removing the current image.
Images.remove({_id:query._id},function(err,result){
//if there is not error removing the image, insert new one with the same metadata
if(!err){
Images.insert(fsFile,function(){
if(!err){
console.log("New image get upload")
}
})
}
});
}else{
console.log("user don't want to change the image")
}
}
})