我在用下面的相关列解析数据库中的“游戏”表:
- 依索维尔(布尔)
- whoseTurn(关系:_user)(游戏可以有多个玩家,因此它可以不止一个人转的同时)
- 玩家(关系:_user)
我需要查询该表并显示在tableview中的3个单独的部分的结果:
我用的是再加上一些这里给出的答案代码的下面的查询思考: https://parse.com/questions/using-pfquerytableviewcontroller-for-uitableview-sections
PFQuery *query = [PFQuery queryWithClassName:self.parseClassName];
[query whereKey:@"players" equalTo:[PFUser currentUser]];
//BREAK UP INTO SECTIONS
[query orderByDescending:@"isOver"];
[query addDescendingOrder:@"whoseTurn"];
我怎样才能显示在3个不同的tableview部分的结果?
这个问题包含两个方面的挑战,这是一个太多的PFQueryTableVC
。 在你的网站后,使明显的是,你可以得到的部分一点点额外的压倒一切的,但有什么不覆盖有你的模型依赖于通过PFRelation相关对象(用户)。
这额外的要求排除了PFQueryTableVC,因为它假设你的表可以在一个单一的查询中获取,但你要看取这两个关系列。
这将迫使你与一个普通的老滚你自己UIViewController
具有UITableView
作为其观点的子视图。 (请注意,我不建议UITableViewController
这里...就像PFQueryTableVC
,它往往产生比方便更省力,但你很可能逃脱它在这里)。
如何做它的要点是:在继承,查询游戏桌,那么它的whoseTurn
关系,那么它的players
的关系。 有了这些数据,你就可以隔离找到游戏分为三个阵列,正好对应于你的表视图部分: gamesThatAreOver
, gamesThatAreUsersTurn
, gamesThatAreOtherUsersTurn
。
你可以把这些阵列中的另一个,称之为model
。 告诉你有你的表视图self.model.count
部分(这将永远是==3
),而排在指数路径数为self.model[indexPath.section].count
您在指数路径对象的版本会给你一个游戏,看起来就像这样: self.model[indexPath.section][indexPath.row];
PS - 我觉得从解析提供一流的“方便”(又名约束)释放自己将是一个净正反正。