循环复合查询 - Parse Swift

时间:2015-10-15 19:11:10

标签: swift for-loop parse-platform global-variables

在我正在使用的应用程序中,用户在列表中选择一组“标签”,然后我需要查询包含至少一个这些标签的所有项目。 为此,我想使用复合查询。

来自Parse.com的

文档

var lotsOfWins = PFQuery(className:"Player")
lotsOfWins.whereKey("wins", greaterThan:150)

var fewWins = PFQuery(className:"Player")
fewWins.whereKey("wins", lessThan:5)

var query = PFQuery.orQueryWithSubqueries([lotsOfWins, fewWins])
query.findObjectsInBackgroundWithBlock {
  (results: [PFObject]?, error: NSError?) -> Void in
  if error == nil {
    // results contains players with lots of wins or only a few wins.
  }
}

我的问题是我的标签是一个数组,我不知道有多少(可能是1,可能是3)。所以我想做一个for循环来为它们中的每一个创建一个查询。

我的问题是我无法访问此for循环之外的变量,我无法事先声明它们,因为我不知道会有多少。

看起来像这样的东西。

for(var i = 0; i < tags.count; i++){
   let i = PFQuery(className: "items")
   i.whereKey("tags", equalTo: tags[i])
}

var query = PFQuery.orQueryWithSubqueries([variable1, variable2 ... ])
query.findObjectsInBackgroundWithBlock {
  (results: [PFObject]?, error: NSError?) -> Void in
  if error == nil {
    // results 
  }
}

有没有办法实现这样的目标?

0 个答案:

没有答案