0

我有我的应用程序,用户可以在其中发布内容,其他用户可以对其发表评论,然后,我使用“SendYourOpinion”方法来存储它

 - (IBAction)SendYourOpinion:(id)sender {

        PFObject *opinion = [PFObject objectWithClassName:@"Opinions"];
        opinion[@"content"] = self.txtFieldOpinion.text;
        opinion[@"userId"] = [PFUser currentUser];
        [opinion saveInBackground];

    }

并且出现标题中的错误,然后我阅读了以前的答案并没有解决我的问题

4

2 回答 2

1

self.txtFieldOpinion.text或者[PFUser currentUser]nil

您需要检查nil并分配一个对象。您不能分配nil为值(如您收到的错误消息中所述)。

    PFObject *opinion = [PFObject objectWithClassName:@"Opinions"];
    opinion[@"content"] = self.txtFieldOpinion.text ? self.txtFieldOpinion.text : [NSNull null];
    opinion[@"userId"] = [PFUser currentUser] ? [PFUser currentUser] : [NSNull null];
    [opinion saveInBackground];
于 2015-01-26T14:42:12.903 回答
0

表示未分配值 (nil),当您尝试分配硬编码值或 Parse 无法解析的类型时,这很有可能。例如,如果您有一个类型为的对象的属性BOOLEAN并且您这样做

object[@"status"] = FALSE, 或 0(您将收到错误消息)

正确的:

NSNumber* status = [NSNumber numberWithBool:NO]; //passing FALSE as status
object[@"status"] = status;

Parse 会将其解析为通过类型分配的值并解析它

于 2015-10-17T12:09:14.180 回答