Meteor:可以按 _id 过滤集合,但我无法使用其他字段过滤集合

Meteor: Can filter a collection by _id but I can't filter a collection using other fields

我对 meteor 还很陌生,我仍在努力寻找过滤集合的方法。这是我的问题,我有一个定义如下的集合;

parent_id: {
    label: 'Parent ID',
    type: String,
  },
ar_session_id: {
    label: 'Session ID',
    type: String,
  },

我插入了一些文档,这里是一个;

{
  "_id" : "oQdtbBtKXHzdxWvzn",
  "parent_id" : "dJkbDBXut5WzwkaFN",
  "ar_session_id" : "dJkbDBXut5WzwkaFNuz77MFgcuGyvgokip",
  "question" : "Do you have blah blah...?",
  "answer" : "no",
  "createdAt" : 1564563509127
}

我可以使用 parent_id 进行过滤,但我无法使用 ar_session_id

进行过滤
var parent_id = "dJkbDBXut5WzwkaFN";
var ar_session_id = "dJkbDBXut5WzwkaFNuz77MFgcuGyvgokip";

qry1 = AssessmentResponse.find({parent_id: parent_id}).fetch();
qry2 = AssessmentResponse.find({ar_session_id: ar_session_id}).fetch();

qry2 returns 空集。我缺少什么?

我能想到的唯一原因是您不在客户端中发布 ar_session_id

例如,如果你有这样的事情:

Meteor.publish("AssessmentResponse", function () {
  return AssessmentResponse.find({}, { fields: { ar_session_id: 0 } });
});

否则,假设您没有任何错字,过滤没有理由为空。