Xcode7 CoreData问题

发布于 2022-09-01 12:35:12 字数 1076 浏览 9 评论 0

在使用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

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

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

花开半夏魅人心 2022-09-08 12:35:12

问题解决了:

删除:@objc(Bowtie)

stackoverflow 上已解决。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文