Parse JS 多重关系查询

Parse JS multiple relation query

我有 3 个 类(调查、SurveyItem、VoteSurvey)

我需要包括所有我没有投票的调查。

  //survey
  var surveyQuery = new Parse.Query(Survey);
  surveyQuery.equalTo("condo",pointerCondo); //essential column filter

  //surveyitem
  var surveyItemQuery = new Parse.Query(SurveyItem);
  surveyItemQuery.matchesQuery("survey",surveyQuery);
  //all survey with filter & surveyitems (return ok)

  var voteQuery = new Parse.Query(VoteSurvey);
  //...

谁能帮帮我?

尚不完全清楚您的 class 结构和字段是什么,因此它们可能是更好的方法。但是,如何查询您投票支持的所有调查,然后找到所有不匹配的调查?例如:

var voteQuery = new Parse.Query('VoteSurvey');
voteQuery.equalTo('user', user);
voteQuery.find().then(function(results) {
  var alreadyVotedSurveyIds = [];

  for (var i=0; i<results.length; i++) {
    alreadyVotedSurveyIds.push(results[i].get('survey').id);
  }

  var surveyQuery = new Parse.Query('Survey');
  surveyQuery.notContainedIn('objectId', alreadyVotedSurveyIds);
  return surveyQuery.find();
}).then(function(notVotedSurveys) {
  // notVotedSurveys is the array of surveys not voted for
});

注意:请记住,Parse 查询的默认限制为 100。