在另一个集合中存储引用会创建对象,但不会创建字符串Meteor

Storing a reference in another collection creates object but not string Meteor

本文关键字:创建 字符串 Meteor 创建对象 集合 存储 引用 另一个      更新时间:2023-09-26

我正在使用collectionFS为我的用户上传个人资料图片。我有两个集合,一个用于userData,另一个用于Images。我试图附加在其他集合的图像参考。但我得到的是对象而不是_id字符串。指针吗?

Biye = new Meteor.Collection ('biye');
Images = new FS.Collection("images", {
  stores: [new FS.Store.GridFS("images")]
});
// .....................upload.............
Template.upload.events({
  'change #exampleInput':function(event, template){  
    var file = $('#exampleInput').get(0).files[0]; 
    newFile = new FS.File(file);
    newFile.metadata = {'ownerId':Biye.findOne({ObjectID:this._id})};
    Images.insert(newFile,function(err,result){
      if(!err){
        console.log(result._id);
       }
     });
   }
})
newFile.metadata = {'ownerId':Biye.findOne({ObjectID:this._id})};

这一行返回整个对象。我想要一个字符串

我可以使用

存储字符串
newFile.metadata = {'ownerId':Biye.findOne({ObjectID:this._id})._id};

刚刚在

末尾添加了。_id
 newFile.metadata = {'ownerId':Biye.findOne({ObjectID:this._id})};