0

我现在更好地理解它了,感谢@dbarthelemy。但是,现在这是我的代码,我收到错误/终止没有“结果与查询匹配”:

- (IBAction)createGroup:(id)sender {
    PFObject *message = [PFObject objectWithClassName:@"Messages"];
    [message setObject:self.recipients forKey:@"recipientIds"];
    [message saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error) {
        if (error) {
            NSLog(@"Error %@ %@", error, [error userInfo]);
        }
        else [self performSegueWithIdentifier:@"showDate" sender:self];
    }];
}

然后在第二个控制器上:

PFQuery *message = [PFQuery queryWithClassName:@"Message"];
            [message getObjectInBackgroundWithId:@"recipientIds" block:^(PFObject     *message, NSError *error) {
                [message setObject:file forKey:@"file"];
                [message setObject:fileType forKey:@"fileType"];
                [message setObject:[[PFUser currentUser] objectId] forKey:@"senderId"];
                [message setObject:[[PFUser currentUser] username] forKey:@"senderName"];
                [message saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error) {
4

1 回答 1

0

在 createGroup: 方法中,请确保使用其中一种保存方法(例如 saveInBackgroundWithBlock:) 将 PFObject 保存到 Parse。

- (IBAction)createGroup:(id)sender {
PFObject *message = [PFObject objectWithClassName:@"Message"];
[message setObject:self.recipients forKey:@"recipientIds"];
[message saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error) {

然后将 PFObject 与您单独的 viewController 类共享(使用属性),然后使用此指针设置其他 PFObject 属性(而不是使用 objectWithClassName 创建新的 PFObject :)。设置附加属性后,不要忘记保存更新的 PFObject。

[self.message setObject:file forKey:@"file"];
[self.message setObject:fileType forKey:@"fileType"];
[self.message setObject:[[PFUser currentUser] objectId] forKey:@"senderId"];
[self.message setObject:[[PFUser currentUser] username] forKey:@"senderName"];
[self.message saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error) {

注意:如果您不能在各种视图控制器之间可靠地共享 PFObject 指针,您可以在 Parse 服务器上执行PFQuery来检索您的对象(假设您可以构建正确的查询)。

于 2013-08-27T10:48:45.810 回答