【发布时间】:2015-01-25 23:16:42
【问题描述】:
我正在使用 parse.com 服务器来发送和检索我的 iOS 应用数据。我想保存歌曲列表,每首歌曲都有以下属性(标题、艺术家、专辑)。我的代码 sn-p 在这里;
-(IBAction)saveSongsData:(id)sender {
PFObject *newPlayer = [PFObject objectWithClassName:@"Players"];
/*[newPlayer addObjectsFromArray:self.songsArrray forKey:@"songs"];
here i got the exception, if i uncomment it*/
[newPlayer setObject:self.txtPlayerName.text forKey:@"playerName"];
[newPlayer setObject:self.txtPlayerDesc.text forKey:@"playerDescription"];
[newPlayer setObject:self.txtPlayerPass.text forKey:@"playerPassword"];
NSString *objectId = [newPlayer objectId];
[[NSUserDefaults standardUserDefaults]setObject:objectId forKey:@"id"];
[newPlayer saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error) {
if (!error) {
}
else {
}
}];
}
其中self.songsArray 是具有以下属性的歌曲对象数组;
-
标题, 艺术家, 专辑。
但是当我尝试使用这行代码来保存我的歌曲数据时。
[newPlayer addObjectsFromArray:self.songsArrray forKey:@"songs"];我遇到了一个异常,这是消息:-
由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“PFObject 值必须可序列化为 JSON”
请帮助我,如何将我的歌曲数据以 JSON 格式发送到服务器。 谢谢。
【问题讨论】:
-
不需要保存数组吗? [新玩家保存];我认为这是您使用 parse 的方式。
-
如果我在 self.songsArray 中有 7 首歌曲。那么如何以 JSON 格式序列化该数据并使用 PFObject 保存该数据?或者还有另一种可能吗?
-
你检查过他们的 REST API 吗? parse.com/docs/rest#objects-classes
-
您可能应该将歌曲对象设为实际的 PFObject,它们是解析数据库的一部分。然后将歌曲与播放器关联(通过 ID 或关系)。
-
感谢@STANGMMX,它帮助解决了我的问题。
标签: ios parse-platform