【发布时间】:2014-08-28 13:39:21
【问题描述】:
我在我的应用程序中创建了一个名为“Date”的类。我想将新创建的 Date 对象保存到 Core Data,但我得到了
属性不能被标记为@NSManaged,因为它的类型不能 用Objective-C表示
这是我的型号代码:
import UIKit
import CoreData
@objc(MyModel)
class MyModel: NSManagedObject {
@NSManaged var dateObject: Date
}
我对 Core Data 的了解还不够,无法理解如何在不使用 NSManaged 的情况下做到这一点(如果这确实是解决方案的话。)有人可以提供帮助吗,至少可以为我指出正确的方向,以便在哪里阅读更多相关信息- 解决方案当然会更好:)。
谢谢。
【问题讨论】:
-
您在 Core Data 模型编辑器中做了什么?您是否设置了 MyModel 实体?你怎么称呼你的班级?你是在创建一个纯 Swift 项目吗?
-
是的,纯粹的迅速。我的实体中有一个属性。即 Date 类型的 dateObject
-
如果你有一个纯 Swift 项目,则不需要
@objc(MyModel)。但是为了在 Core Data 中使用你的 MyModel 类,你必须在 Core Data 模型实体检查器的 Class 字段中的类名前加上你的模块名。例如:“theNameofMyApp.MyModel”(见this page底部的图片)。 -
您是否使用
@objc属性标记了您的Date类? -
我遵循了 Apple 页面上的指令。仍然收到有关 @NSManaged 的错误
标签: core-data swift ios8 xcode6