sql >> データベース >  >> NoSQL >> MongoDB

collectionfsを使用して画像を更新する

    FSCollection(この場合は画像)を使用して現在のURL画像を更新する方法はありません。このGithubの問題 、RaixとAldeedがFS.File.updateData()のような将来の作業について話します。 、ただしまだ実装されていません。

    考えられる回避策はこれです。

    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. NodeJSはすべてのユーザーセッションをログアウトします

    2. Mongooseは、pre('save')のプロパティの以前の値へのアクセスを提供しますか?

    3. MongoDBがシェルでデータベースを作成しない

    4. Mongodbクライアント側のJavaScriptAPI