ios - 无法在 CoreData 子类中创建新属性? iOS8 Swift3

标签 ios swift xcode core-data ios8

我在 Xcode 中创建了一个数据模型,选择了我的所有实体,单击编辑器 -> 创建 NSManagedObject 子类。它在我的工作区范围内创建了所有 +CoreDataProperties 和 +CoreDataClass,而不是我的项目。

然后我继续编辑类文件如下:

public class Child: NSManagedObject {
    enum Gender:Int{
        case male=0,female,unknown
    }

    var uuid:UUID = UUID()
    var gender:Gender?

    convenience init(name:String,birthday:String,gender:Int){
        self.init()
        self.name = name
        self.birthday = Conversor.convertDate(dateString: birthday)
        if(gender >= 0 && gender <= 2){
            self.gender = Gender(rawValue: gender)!
        }
    }

    func setGender(gender:Int){
        self.gender = Gender(rawValue: gender)!
    }
    func setBirthday(birthday:Date?){
        self.birthday = birthday
    }
}

我没有触及属性文件。 我了解到 CoreData 的所有地方都告诉我 Xcode 不会再次生成类文件并且可以安全地编辑它们,但是文件中的注释告诉我相反的情况

//  This file was automatically generated and should not be edited.

当我尝试在我的项目中使用该类时,自动完成找不到性别和 uuid,如果我尝试使用它,它会说:

'Gender is not a member type of 'Child'

在许多其他此类错误中

项目构建阶段中没有引用那些文件

正确的做法是什么? 如何编辑 CoreData 类,以便我可以拥有与 CoreData 无关的其他属性和方法?

非常感谢您提前 :)

最佳答案

请在右侧面板中为您的实体选择代码生成为手动/无。然后继续单击编辑器 -> 创建 NSManagedObject 子类。

关于ios - 无法在 CoreData 子类中创建新属性? iOS8 Swift3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42876118/

相关文章:

ios - 将 ImageView 放入 Collection View 单元格导致 IBTool 发出警告

ios - 如何防止在屏幕上通知用户有关 CloudKit 的新更改?

swift - UIDocument/Xcode 配置

swift - iOS 框架中缺少必需的模块

xcode - 让 OS X Swift 应用程序在后台运行

ios - Xcode (Swift) 文档说将属性设置为 YES,但仅在设置为 true 时有效?

ios - 如何在 React Native 0.60+ 中添加原生模块?

ios - SwiftUI:Spacer 在 ScrollView 中不起作用

ios - 如何全局导入一个Swift框架?

php - 图像未通过 Objective C 中的 POST 上传到服务器