Ios 检查查询键是否为nil Parse

Ios 检查查询键是否为nil Parse,ios,swift,parse-platform,pfquery,pfobject,Ios,Swift,Parse Platform,Pfquery,Pfobject,因此,我在parse中有一个查询,它必须根据一个键是否等于某个对象来查找对象。下面是几行代码 var gamesQuery = PFQuery(className: "Games") gamesQuery.whereKey("challenged", equalTo: (PFUser.currentUser()!.objectId!)) gamesQuery.whereKey("challenger", equalTo: PFUser.currentUser()!) 但

因此,我在parse中有一个查询,它必须根据一个键是否等于某个对象来查找对象。下面是几行代码

    var gamesQuery = PFQuery(className: "Games")
    gamesQuery.whereKey("challenged", equalTo: (PFUser.currentUser()!.objectId!))
    gamesQuery.whereKey("challenger", equalTo: PFUser.currentUser()!)
但是,当运行此查询时,由于没有符合搜索参数的对象,因此偶尔会发现该查询为nil

是否有任何我可以运行的检查可以检查

gamesQuery.whereKey("challenged", equalTo: (PFUser.currentUser()!.objectId!))

是零吗?对此问题的任何帮助都将不胜感激。

您当前的查询本质上是一个
-“查找被质询的对象==当前用户和质询者==当前用户”

我认为您是在执行
查询-“查找被质询==当前用户或质询==当前用户的对象”。您可以使用in-Parse实现这一点-

let challengedQuery = PFQuery(className: "Games")
challengedQuery.whereKey("challenged", equalTo: (PFUser.currentUser()!.objectId!))

let challengerQuery = PFQuery(className: "Games")
challengerQuery.whereKey("challenger", equalTo: PFUser.currentUser()!)

let gamesQuery = PFQuery.orQueryWithSubqueries([challengedQuery, challengerQuery])

gamesQuery.findObjectsInBackgroundWithBlock {
  (results: [PFObject]?, error: NSError?) -> Void in
  if error == nil {
     // results contains challenger and challenged games.
  }
}

我不明白你的问题-你想检查一下有没有挑战==当前用户独立于挑战者==当前用户的记录吗?你似乎在寻找用户挑战自己的游戏?不,我不是这样做的,如果这段代码有点脱离上下文,很抱歉。在这个游戏中,用户可以挑战某人,也可以被挑战。所以,我在搜索任何一个游戏,其中一个用户被挑战或被其他人挑战。我正在寻找一种方法来测试challenger==当前用户或challenger==当前用户是否为nil@PaulW11您可以忽略代码,它更多的只是一个示例。我所寻找的只是一种检查“whereKey等于”语句是否为零的方法@paulw11您是指查询不返回对象的位置吗?不,当没有符合challenger==currentUser和challenger==currentUser参数的对象时,我会得到一个错误。我需要一些东西来检查这两个语句是否为零@保罗11谢谢你,这就是我要找的