使用CollectionFS上传图像时添加额外的字段

时间:2015-04-04 04:20:13

标签: node.js mongodb meteor

我是Meteor编程的新手,我一整天都试图弄清楚这一点,没有任何运气。 我正在使用collectionFS上传图片,我想给它我的Meteor.userId();这样只有登录的用户才能看到自己的图像 我有以下代码:

'change .myFileInput': function(event, template) {
  FS.Utility.eachFile(event, function(file) {
    Imagess.insert(file, 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});
      }
    });
 });
},

我试过这样做但是它不起作用,它说访问被拒绝:

'change .myFileInput': function(event, template) {
  FS.Utility.eachFile(event, function(file) {
    Imagess.insert(file, 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
        };
        createdBy: currentUserId,
        Meteor.users.update(currentUserId, {$set: imagesURL});
      }
    });
 });
},

知道如何完成这项工作?

非常感谢!

1 个答案:

答案 0 :(得分:2)

例如,您应该在此处使用元数据。

FS.Utility.eachFile(event, function(file) {
     file.metadata = {
            imageOwner:Meteor.userId();
      }
    Imagess.insert(file, function (err, fileObj) {

看看这个小DEMO,这里是Source Code