Xcode7 CoreData问题

在使用CoreData中出现了这样的错误

CoreData: warning: Unable to load class named 'CoreDataSwift2_2.Bowtie' for entity 'Bowtie'.  Class not found, using default NSManagedObject instead.

fatal error: NSArray element failed to match the Swift Array Element type

Google一圈发现,主要是有两个问题没有注意:
1、

swift@objc(Bowtie)
class Bowtie: NSManagedObject {

// Insert code here to add functionality to your managed object subclass

}

有的忘记添加了@objc(Bowtie)
这里一点在Xcode7中已经可以在动给你补全了,所以我的问题没有出现在这里。

2、在生成NSManagedObject子类之后,要在.xcdatamodeld文件中将Entity的Class属性修改成“项目名.Rntity名”的形式,可是 修改成这样之后,那个.或自动消失。现在不加项目名称,错误提示中CoreDataSwift2_2.Bowtie不能加载到这个文件。说明了Xcode7中,你不用去添加项目名称。Xcode7已经帮你填加了,相反如果你填加了之后反而会出现错误。

在我看来这两个容易出错的地方我都没有错误。

我的疑问两个:
1、我在生成的.sqlite文件中已经可以看到了我写入的一些数据。

2、既然可以看到我写入的数据但是现在,取不出来。
fatal error: NSArray element failed to match the Swift Array Element type

希望有大神可以帮我解决一下问题

阅读 6.9k
1 个回答

问题解决了:

删除:@objc(Bowtie)

stackoverflow 上已解决。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题