из области документы:
String
, NSDate
и NSData
свойства могут быть объявлены в качестве дополнительного или не по желанию, используя стандартный Swift синтаксис.
Дополнительные числовые типы объявляются с помощью RealmOptional
:
class Person: Object {
// Optional string property, defaulting to nil
dynamic var name: String? = nil
// Optional int property, defaulting to nil
// RealmOptional properties should always be declared with `let`,
// as assigning to them directly will not work as desired
let age = RealmOptional<Int>()
}
let realm = try! Realm()
try! realm.write() {
var person = realm.create(Person.self, value: ["Jane", 27])
// Reading from or modifying a `RealmOptional` is done via the `value` property
person.age.value = 28
}
RealmOptional
поддерживает Int
, Float
, Double
, Bool
, и все размерных версий Int
(Int8
, Int16
, Int32
, Int64
).
UPDATE:
Факультативного Ints, которые были упомянуты в Tweet по Realm просто о устранении ошибки для RealmOptional
пути реализации необязательного числового значения с размером версий Int
According в ребятам из Realm вам все равно придется использовать RealmOptional
, если вы хотите иметь дополнительные числовые значения в объекте Realm. Вы не можете просто использовать его, как и другие необязательные типы.
So dynamic var reps: Int?
не будет работать.
Вы обновили Королевство? Кроме того, вы используете Cocoapods? Вы уверены, что используете 0.96.1? –
Да, я использую CocoaPods. Realm 0.96.1 и RealmSwift 0.96.1 –
Попробуйте использовать Int16, 32 или 64. Я смотрю на документы, и он говорит, что они поддерживают только те, что указаны в 0.96.1. Вы используете ветвь Swift 2.0, верно? –