sql >> Database >  >> NoSQL >> MongoDB

Afbeelding bijwerken met collectionfs

Er is geen manier om een ​​huidige url-afbeelding bij te werken met FSCollection (in dit geval de afbeelding), controleer dit Github-probleem ,waar Raix en Aldeed praten over toekomstig werk zoals FS.File.updateData() , maar het is nog niet geïmplementeerd.

Een mogelijke oplossing is dit.

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")
        }                
   }
})


  1. Mongodb Healthcheck stap voor stap

  2. Kan Mongo Export Query niet gebruiken

  3. Mongoid-query op hash-velden

  4. Toegang tot Redis-sleutel blokkeren (ServiceStack)