0

私は解析するのが初めてで、ユーザーを自分の写真にリンクする PFRelation を作成しようとしています。これが私のコードです:

NSData *imageData = UIImagePNGRepresentation(myImage);
PFFile *imageFile = [PFFile fileWithName:@"image.png" data:imageData];
PFObject *pic = [PFObject objectWithClassName:@"Pics"];
//[pic setObject:imageFile forKey:@"Image"];
pic[@"Image"] = imageFile;
PFUser *user = [PFUser currentUser];
PFRelation *relation = [user relationForKey:@"myPhotos"];
[relation addObject:pic];
[user saveInBackground];
//[pic saveInBackground];


NSString * storyboardName = @"Main";
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:storyboardName bundle: nil];
UIViewController *myViewController = [storyboard instantiateViewControllerWithIdentifier:@"MainScreen"];
[self presentViewController:myViewController animated:YES completion:nil];

写真をバックグラウンドで保存すると、Pic クラスをクリックすると、撮影した写真が表示されるため、写真自体が保存されていることがわかります。しかし、私の問題は、User クラスを見ているときに myPhotos リレーションをクリックすると、そのリレーションにオブジェクトがないことです。画像がリレーションに追加されないのはなぜですか?

4

1 に答える 1

1
PFObject *details = [PFObject objectWithClassName:@"**your table name**"];

NSData *imageData = UIImagePNGRepresentation(myImage);

PFObject *picDetails = [PFObject objectWithClassName:@"**myphotos**”];

picDetails [@"picture"] = [UIImage imagewithdata:imageData];
                     [Details save];  [picDetails save];
                          FRelation *relation = [Details relationForKey:@"**myphotos**"];  [relation addObject:details];
                            [Details saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error) {
                                //Do something after the last save...

                                if (succeeded) {
                                    // The object has been saved.
                                    UIAlertView *success_alert = [[UIAlertView alloc]initWithTitle:@"Success" message:@"Successfully image saved" delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil];
                                    [success_alert show];

                                } else {
                                    // There was a problem, check error.description
                                    UIAlertView *fail_alert = [[UIAlertView alloc]initWithTitle:@"Failed" message:@"Failed to save data" delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil];
                                    [fail_alert show];
                                }
                            }];

画像保存を使ってPFRelationに保存する方法です。この回答がお役に立てば幸いです。ありがとうございました。

于 2015-04-03T06:31:14.277 に答える