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];
    }];
}

次に、2 番目のコントローラーで:

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) {

次に、(プロパティを使用して) 別の viewController クラスと PFObject を共有し、(objectWithClassName: を使用して新しい PFObject を作成する代わりに) このポインタを使用して追加の 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 に答える