レルムスイフトに問題があります。私は、ユーザーが作成した文字に関する情報を格納するオブジェクトを持っています。ただし、特定のプロパティは保存されません。オブジェクトの名前を1文字だけ切り替えると、正しく保存されて読み込まれます。最初の例では、race
プロパティの既定値以外の値の保存は拒否されていますが、2番目の例では値をracea
プロパティに問題なく保存します。これを引き起こしているのは何ですか?レルム予約語
例1
class Character: Object {
//MARK: Properties
dynamic var id: Int = 1
dynamic var name: String = "John Appleseed"
dynamic var level: Int = 1
dynamic var exp: Int = 0
dynamic var race: Int = 0
dynamic var career: Int = 0
dynamic var currentHealth: Int = 100
dynamic var inventory: Inventory? = Inventory()
//MARK: Realm
override static func primaryKey() -> String? {
return "id"
}
}
例2
class Character: Object {
//MARK: Properties
dynamic var id: Int = 1
dynamic var name: String = "John Appleseed"
dynamic var level: Int = 1
dynamic var exp: Int = 0
dynamic var racea: Int = 0
dynamic var career: Int = 0
dynamic var currentHealth: Int = 100
dynamic var inventory: Inventory? = Inventory()
//MARK: Realm
override static func primaryKey() -> String? {
return "id"
}
}
拡張
extension Character {
func getRace() -> String {
return Fitventure.species[race]
}
}
おそらく問題はあなたのコードのどこかにあります。これはうまく見えます。 – Tj3n
@ Tj3n投稿を更新しました。 'getRace()'関数が問題を引き起こしていたようです。変数と同じ名前を持たない関数があると、なぜ領域がこれを行うのですか? –