使用 RestKit-0.20.3 调用 NSManagedObject 类“XYX”上的指定初始化程序失败
Posted
技术标签:
【中文标题】使用 RestKit-0.20.3 调用 NSManagedObject 类“XYX”上的指定初始化程序失败【英文标题】:Failed to call designated initializer on NSManagedObject class ’XYX’ with RestKit-0.20.3 【发布时间】:2014-04-05 03:47:01 【问题描述】:我正在使用 RestKit-0.20.3 并遇到问题 我在数据库中有一个学生表。要获取学生历史记录,请执行 get api 调用,像这样的 url https://xyz.com/api/getStudentHistory?x=a&y=b&z=c 带有一些参数。 使用这种方法
[[RKObjectManager sharedManager] getObjectsAtPath:path parameters:param success:^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult)
在'path'参数传递-path = https://xyz.com/api/getStudentHistory
服务器发送响应时出现此错误。
CoreData: error: Failed to call designated initializer on NSManagedObject class ’Student’
之后我收到此消息并且应用程序崩溃。
Uncaught exception [<Student 0xd36b3e0> valueForUndefinedKey:]: the entity (null) is not key value coding-compliant for the key "notes".
Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<Student 0xd36b3e0> valueForUndefinedKey:]: the entity (null) is not key value coding-compliant for the key "notes".'
【问题讨论】:
The entity (null) is not key value coding-compliant for the key "title" 的可能副本 基本 URL 和路径模式的组合需要在所有情况下创建一个有效的 URL,并且仅使用路径模式来匹配描述符。 是的@Wain,你是对的,我从那里得到了线索,我提到了。 【参考方案1】:经过研发和花费大量时间从这里得到了线索 The entity (null) is not key value coding-compliant for the key "title"
只需将我的路径参数从 path = https://xyz.com/api/getStudentHistory 替换为 path = /api/getStudentHistory 在方法中
[[RKObjectManager sharedManager] getObjectsAtPath:path parameters:param success:^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult)
现在我的问题解决了……:)
【讨论】:
以上是关于使用 RestKit-0.20.3 调用 NSManagedObject 类“XYX”上的指定初始化程序失败的主要内容,如果未能解决你的问题,请参考以下文章
RKConnectionDescription 与 Restkit 0.20.3 不稳定