从Meteor中的数组中检索值作为字符串

时间:2014-10-13 09:58:54

标签: javascript mongodb meteor

如何以字符串形式检索数组中的特定元素?我填写了一个名为' list'它由Posts集合中的文档ID组成。

在我的方法中按以下方式插入postId:

var postId = //code for retrieving post id 
  Meteor.users.update( this.userId, { $addToSet: { 'profile.list': postId}});

现在,我检索第一个postId值以查找Post文档。

var postId = Meteor.user().profile.list;
Posts.update( {_id: postId}, { $addToSet: {'message': sometext}});

更新不起作用,因为它出现在我的控制台日志中我正在检索对象[ 'SvNJAZWNFW8fpobJv' ] - 而不是字符串。如果我要手动插入带有语音标记的postId值,它就可以工作。

如何定位'列表中的特定位置?字段并使用该值来执行更新?

1 个答案:

答案 0 :(得分:1)

如果您只想更新单个postId ::

// index is the position in the list you want to update (0 for the first one)
Posts.update( {_id: postId[index]}, { $addToSet: {'message': sometext}});

如果你想更新整个地段:

Posts.update( {_id: { $in: postId }}, { $addToSet: {'message': sometext}});