用户我在我的应用程序中集成了Parse,此时我已启动并运行登录功能。现在,我试图了解/了解如何在当前登录用户独有的另一个类中创建和连接对象,以及如何检索这些对象。
所以我需要一些帮助来解决这个问题。我发现this question并且它与我想要达到的目标相同但是我无法弄清楚"连接"可以这么说,如果我需要向我的User类和/或我要从中检索的Object类添加参数。
为了简单起见,我们说我已经使用已经为Parse User类创建的唯一objectId登录了我的User。然后当我登录时,我这样做:
PFObject *list = [PFObject objectWithClassName:@"Lists"];
list[@"name"] = @"My list";
[list saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error) {
if (succeeded) {
// The object has been saved.
NSLog(@"Success");
} else {
// There was a problem, check error.description
NSLog(@"Fail");
}
}];
列表已创建并存储在我的应用程序Parse帐户的List类中。现在,如果我说我退出然后再与创建该列表的用户一起,我该如何检索该用户的唯一列表?
在问题(之前链接)中,建议并标记为有效:
PFQuery *innerQuery = [PFQuery queryWithClassName:@"User"];
[innerQuery whereKey:@"userType" equalTo:@"X"]; // fix with your real user type
PFQuery *query = [PFQuery queryWithClassName:@"Post"];
[query whereKey:@"user" matchesQuery:innerQuery];
[query findObjectsInBackgroundWithBlock:^(NSArray *posts, NSError *error) {
// posts are posts where post.user.userType == X
}];
在此示例中,@"userType"
,@"X"
和@"user"
是什么?有人可以解释,以便我得到"流动"或者可以说是查询之间的联系。所以我可以实现我之后的功能。
答案 0 :(得分:2)
在您查询Parse并检索用户信息之前,您必须存储一些。这是通过创建一个附加了一些属性的PFObject来完成的。保存后,您可以检索此信息。下面是一个创建User对象的示例,该对象充当Favorite对象的父对象。
PFObject *user = [PFObject objectWithClassName:@"User"];
[user saveEventually];
PFObject *favorite = [PFObject objectWithClassName:@"Favorites"];
favorite[@"numberOfFavorites"] = @(10);
favorite.ACL = [PFACL ACLWithUser:[PFUser currentUser]];
favorite[@"parent"] = user;
[favorite saveEventually];
保存后,您可以再次为给定用户检索对象:
PFQuery *query = [PFQuery queryWithClassName:@"User"];
PFQuery *innerQuery = [PFQuery queryWithClassName:@"Favorites"];
[innerQuery whereKey:@"parent" matchesQuery:query];
[[[innerQuery findObjectsInBackground] continueWithBlock:^id(BFTask *task) {
if (task.error){
return nil;
}
}];
Parse非常good documentation and examples可以帮助你。希望这可以帮助。 Ť