1

User モデル クラス (XCode と Swift で生成) があります。

@objc(User)
class User: NSManagedObject { }

そしてそれは拡張子です:

extension User {    
    @NSManaged var id: NSNumber?
    @NSManaged var firstName: String?
    @NSManaged var lastName: String?
    @NSManaged var birthYear: NSNumber?    
}

CoreData からデータを保存/取得できます。 しかし、このクラスを CoreData なしでオブジェクト管理に使用できますか? または、このために他のクラス/構造体を作成する必要がありますか?

たとえば、(ObjectContext なしで) User オブジェクトを作成し、その属性を設定して、いくつかの関数でプロパティとして送信しますか? たぶん、クラス User (のようなstruct {var firstNameData, secondNameData,...}) でいくつかの構造体を作成し、それをコードで使用できますか?

4

1 に答える 1

0

クラスを更新しました:

struct User {

    var id:        Int!
    var firstName: String!
    var lastName:  String!
    var birthYear: UInt?
}

@objc(UserManagedObject)
class UserManagedObject: NSManagedObject {

    func toStruct() -> User {

        var userData = User()
        userData.id = Int(self.id)
        userData.firstName = self.firstName
        userData.lastName  = self.lastName
        if let by = self.birthYear {
            userData.birthYear = UInt(by)
        }

        return userData
    }
}

オブジェクト管理のために、CoreDataの入出力にstruct UserとUserManagedObjectを使用します

于 2015-11-20T08:25:55.753 に答える