2016-11-07 16 views
7

Potrzebuję wdrożyć protokół w moim modelu użytkownika, który musi mieć pewne specjalne właściwości. Ale chciałbym uniknąć ich przechowywania/utrwalania w bazie danych o Królestwie.Sferze, unikaj przechowywania pewnej własności

Nie widziałem w dokumentacji, czy istnieje słowo kluczowe do tego. Czy istnieje sztuczka, która pozwala uniknąć zapisywania niektórych właściwości?

public final class User: Object, Mappable, AvatarImageViewDataSource { 

dynamic var id: Int = 0 
dynamic var desc: String? = nil 
dynamic var email: String? = nil 
dynamic var firstName: String? = nil 
dynamic var lastName: String? = nil 

... 

public var myPropertyIDontWantToSave: String? = nil // I don't want this to be stored 

Odpowiedz

14

Zapoznaj się z dokumentami RealmSwift na temat Ignored properties. W sekcji tej znajduje się przykładowy kod:

class Person: Object { 
    dynamic var tmpID = 0 
    var name: String { // read-only properties are automatically ignored 
    return "\(firstName) \(lastName)" 
    } 
    dynamic var firstName = "" 
    dynamic var lastName = "" 

    override static func ignoredProperties() -> [String] { 
    return ["tmpID"] 
    } 
}