ios - PFRelation addObject 不添加关系

标签 ios parse-platform pfobject pfrelation

我正在尝试将一个对象添加到 Parse 中的一个关系,尽管代码执行时没有任何错误,但该关系没有出现在后端,因此该对象没有被保存。

PFObject *newContact = [PFObject objectWithClassName:@"Contact"];

[newContact saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error) {
    PFQuery *query = [PFQuery queryWithClassName:@"Trip"];
    PFObject *trip = [query getObjectWithId:self.parseID];

    PFRelation *rel = [trip relationForKey:@"contacts"];
    [rel addObject:newContact];

    contact.parseID = newContact.objectId;
}];

我还检查了 PFObject trip 是否正确,并返回了具有相应 ID 的所需对象。关键联系人也经过仔细检查并正确无误。

最佳答案

问题是您永远不会保存关系。您在 block 中创建 PFRelation,向其添加一个对象,然后不对其执行任何其他操作...您永远不会保存它。

相反,尝试获取 trip 对象并在保存 block 的 外部 创建 PFRelation,例如:

PFQuery *query = [PFQuery queryWithClassName:@"Trip"];
PFObject *trip = [query getObjectWithId:self.parseID];

PFObject *newContact = [PFObject objectWithClassName:@"Contact"];

PFRelation *rel = [trip relationForKey:@"contacts"];
[rel addObject:newContact];

[newContact saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error) {
    contact.parseID = newContact.objectId;
}];

关于ios - PFRelation addObject 不添加关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27338069/

相关文章:

ios - 无法通过 AdHoc 测试生产推送通知

ios - 为什么在访问用户的 Facebook 信息时出现此错误?

ios - 解析 : Compare PFObject to pointer in class

ios - 在应用程序的 PFConfig 中存储 PFObject 指针

ios - 如何在 Firebase 中检索特定的 child ?

ios - UIImageView 位于顶部并设置大小

objective-c - NSString Initwithformat :arguments: 的限制

ios - 处理图像 xcode 7 beta 4 的不同 iPhone/iPad 尺寸的约束

xcode - PFQuery.getObjectWithId(objectId : String) --- 'AnyObject?' is not convertible to 'String' error --- Parse sdk 1. 7.1 和 Xcode 6.3

ios - 无法从 Parse 检索图像 (Swift)