- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在尝试快速创建 NSManagedObject 的子类。我在模型编辑器中创建了两个名为 Pages 和 Book 的实体,并生成了它们的类文件。这是两个类:
@objc(Pages)
class Pages: NSManagedObject {
@NSManaged var pageNo: NSNumber
}
@objc(Book)
class Book: NSManagedObject {
@NSManaged var pageCount: NSNumber
@NSManaged var title: String
@NSManaged var fetchLastPage: [Pages]
}
作为创建页面实例的测试,我在 ViewDidLoad 中编写了这段代码,但由于找不到模型中的实体而失败了:
let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
let managedContext = appDelegate.managedObjectContext!
var pages = NSEntityDescription.insertNewObjectForEntityForName("StoreTest.Pages", inManagedObjectContext: managedContext)
'StoreTest' 是我的应用程序的名称,它也在两个实体的模型编辑器中设置。为了查看发生了什么,我在创建实例之前添加了这段代码:
var pagesEntity = NSEntityDescription.entityForName("StoreTest.Pages", inManagedObjectContext: managedContext)
println("pagesEntity = \(pagesEntity)")
var ents = managedContext.persistentStoreCoordinator!.managedObjectModel.entities
println("entities = \(ents)")
NSEntityDescription.entityForName 调用返回 nil,但对 managedObjectModel.entities 的调用返回两个实体。
我确定没有拼写问题。此外,managedObject 不是零。我的数据模型文件的目标已正确设置为我的应用程序模块。
我使用的是 xCode 6.4。
感谢您的帮助!
最佳答案
从实体名称中删除额外的 StoreTest.
,您在那里不需要它,并且点可能会导致查找出现问题。
这实际上可能只是您对实体名称是什么感到困惑,它在模型中设置,然后您设置类名称(通常与实体名称相同)。
关于swift - 核心数据 NSEntityDescription.entityForName 返回 nil,但 managedObjectModel.entities 列出实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32546903/
我正在尝试将记录保存在表中。 我阅读了StackOverflow中的所有问题和答案,但无法解决问题。 当我尝试保存数据时,出现错误: 2013-08-31 22:25:37.321 OnTheRoad
我正在尝试使用 Core Data 让用户可以添加最喜欢的汽车。用户可以选择品牌(在单独的 tableviewcontroller 中)、模型(文本字段)和年份(文本字段)。这些汽车将显示在 tabl
我创建了一个测试项目来从 http://api.androidhive.info/contacts/ 获取数据一切正常,但是当我尝试将 Web 服务返回的数据保存到名为 ContactDB 的数据模型
我有一个使用核心数据的项目,这个错误会间歇性地发生。我知道实体在那里,因为大多数时候,应用程序打开并显示 entityName 的内容。1. 这是在应用程序委托(delegate)中发生的,而不是被
我有一位使用 iPad 2 的客户遇到了崩溃,我无法重现它。 崩溃报告: Last Exception Backtrace: 0 CoreFoundation 0
我对我的模型做了一些更改(但我还不想迁移,所以我只是删除应用程序,构建干净等) 但是,当我在 iPhone 或模拟器中运行它时,出现以下错误: *** Terminating app due to u
当我尝试将我的数据从核心数据加载到 TableView Controller 时出现错误。我相信这是由于 managedObject 没有被正确传递。 但我相信我是在对 didFinishLaunch
@IBAction func CreateButton(_ sender: AnyObject) { let appDelegate = (UIApplication.shared.deleg
一个关于核心数据模型的小问题。 这就是我发帖的原因:+entityForName:在此模型中找不到名为“Dogs”的实体。 我想做什么:我想创建一个应用程序,该应用程序将读取/写入有关具有 2 个实体
我设置了一个 DatabaseApplicationService 获取以编程方式定义的 NSManagedObjectModel 基于这个模型创建一个NSPersistentCloudKitCont
我有以下错误: 2012-04-18 10:15:49.585 FoodXJournal[13931:fb03] *** Terminating app due to uncaught excepti
大家下午好 我尝试在 (locations) 核心数据教程代码中向持久存储添加第二个数据实体,然后在新 View 中访问它。我认为我已经按照教程进行操作,并检查了我是否在进行干净的构建等,但看不到要更
正在使用界面生成器创建 View Controller ,并将 NSManagedObjectContext 传递给它,一切都很完美。但是我一直收到错误,就好像我没有设置任何东西一样。 我发布这个是因
能否请您帮助我了解如何解决此问题?我正在尝试将 Magical Record 与我的 CoreData 数据库一起添加到我可以跨多个项目使用的静态框架中。 我得到的异常如下: +entityForNa
我已经使用 Xcode 6 beta 2 在一个小的 iPhone 项目上测试了 swift。该项目使用核心数据访问数据模型中的 2 个实体(用户/契约(Contract))。在 IOS 模拟器中一切
我已经为 CoreData 苦苦挣扎了几天,但我一直收到这个错误: 'NSInternalInconsistencyException', reason: '+entityForName: could
我有一个框架项目,当我尝试对我的类进行单元测试时遇到了那个奇怪的错误。这是 Andrew Bancroft 建议的代码进入内存NSManagedObjectContext func setUpInMe
我的代码是这样的: NSManagedObjectContext *context = [self.fetchedResultsController managedObjectContext];
我将 Core Data 用于 Swift 语言的表格 View 。可以启动成功,但是点击AddView中的Done按钮后,出现错误: 由于未捕获的异常“NSInvalidArgumentExcept
我有一个基于窗口的应用程序,其中集成了选项卡栏和导航栏。导航栏上有一个可打开表格 View 的自定义按钮。 单击表格的单元格时,我想打开一个新的表格 View Controller 。但是,一旦我单击
我是一名优秀的程序员,十分优秀!