解析服务器:从查询javascript sdk中排除关系

时间:2017-09-19 10:55:49

标签: javascript parse-platform parse-server

我正在尝试查询一类用户,其中包含名为" blocking"的关系列。其中包含来自同一类的用户对象列表

当我尝试查询所有用户时,我想查询此关系列中不存在的用户

我做了以下

var currentUser = Parse.User.current();
var relation = currentUser.relation('blocking')
query.doesNotExist(relation);
query.find().then((users)=>{
  for (let i = 0; i < users.length; i++) {
    let object = users[i];
    console.log(object)

  }
  }, (error) => {
    console.log(error);
  });

但它无效

任何帮助将不胜感激

1 个答案:

答案 0 :(得分:2)

我设法自己做了

首先我查询关系并在数组中存储阻塞的id列表

    var currentUser = Parse.User.current();
      var relation = currentUser.relation("blocking");
      relation.query().find().then(blockedusers=>{
        var blockedIds = []
        for (var i = 0; i<blockedusers.length; i++){
          blockedIds.push(blockedusers[i].id)
        } 
      })

之后我将整个查询移动到关系find中并执行(不包含在)此数组中,如下所示

         query.notContainedIn("objectId", blockedIds)

解决了我的问题

感谢