为什么通过保存PFUser对象来保存PFRelation?

时间:2015-01-11 17:41:40

标签: ios parse-platform pfrelation

所以我无法理解PFRelation如何保存,我有这段代码:

PFUser *user = [PFUser currentUser];
PFRelation *relation = [user relationForKey:@"likes"];
[relation addObject:post];
[user saveInBackground];

为什么更新用户,即[user saveInBackground]更新该用户的PFRelation字段“赞”?这是使用单个API调用还是[关系addObject:post];还需要API调用吗?

非常感谢任何帮助。

由于

1 个答案:

答案 0 :(得分:2)

在您的情况下,在情况下使用1个API请求。

看一下PFObject [直接来自Parse.com]:

// Create the post
PFObject *myPost = [PFObject objectWithClassName:@"Post"];
myPost[@"title"] = @"I'm Hungry";
myPost[@"content"] = @"Where should we go for lunch?";

// Create the comment
PFObject *myComment = [PFObject objectWithClassName:@"Comment"];
myComment[@"content"] = @"Let's do Sushirrito.";

// Add a relation between the Post and Comment
myComment[@"parent"] = myPost;

在这里你要为PFObject设置属性或属性,但是在你保存它之前什么都不会发生,你可以对对象做任何事情,比如改变它,更新它,不重要,但后端明智,它赢了&# 39; t更新,除非你告诉它保存在哪里:

[myComment saveInBackground];

简而言之,你可以整天添加关系,指针和众多参数,但在你告诉它发生之前什么都不会发生:[saveInBackground];

因为您将其与用户直接关联,所以它会将其保存到该用户,因为您告诉了它。因为您指定了与用户的关系,所以一旦保存了用户属性,关系也将被保存。但是,这不会创建更多的API请求。