Swift RestKit CoreData - 用于类名的RKEntityMapping nil类

Edd*_*ddz 7 mapping core-data restkit swift

在Swift中使用RestKit和CoreData

RestKit提供将JSON直接映射到NSManagedObject实例的功能.您使用以下代码行来初始化RKEntityMapping对象:

var classMapping :RKEntityMapping = RKEntityMapping(forEntityForName:"className",inManagedObjectStore:managedObjectStore)
Run Code Online (Sandbox Code Playgroud)

这会导致以下错误:由于未捕获的异常'NSInternalInconsistencyException'而终止应用程序,原因:'无法初始化具有nil托管对象类的实体的实体映射:为托管对象类名'className'获取了nil类.也许你忘了将类文件添加到你的目标?

由于RestKit API中的这一行而发生错误:

Class objectClass = NSClassFromString([entity managedObjectClassName]);
Run Code Online (Sandbox Code Playgroud)

解:

如果您的NSManagedObject类是用Swift编写的,则必须在类声明之前添加以下代码:

@objc(className)

class className {
...
}
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助!