Swift 2 的领域唯一 ID
Realm Unique ID with Swift 2
在 Realm 中有没有办法为存储在数据库中的每个对象设置一个唯一的 ID?我不一定需要它每次都自动递增。我只是想知道在 iOS 8 或更高版本的 Swift 2 中是否有办法做到这一点?我知道你可以在 objC 中做到这一点。
要为您的领域中的所有对象生成 UUID,您可以创建一个生成 UUID 的超类:
class IdentifiableObject : Object {
private(set) dynamic var uuid = NSUUID().UUIDString
}
斯威夫特5
class IdentifiableObject : Object {
private(set) dynamic var uuid = NSUUID().uuidString
}
虽然这可行,但它确实有一个主要问题,至少在 realm 支持只读属性之前是这样。更新对象时,需要先获取存储的对象再保存。
在 Realm 中有没有办法为存储在数据库中的每个对象设置一个唯一的 ID?我不一定需要它每次都自动递增。我只是想知道在 iOS 8 或更高版本的 Swift 2 中是否有办法做到这一点?我知道你可以在 objC 中做到这一点。
要为您的领域中的所有对象生成 UUID,您可以创建一个生成 UUID 的超类:
class IdentifiableObject : Object {
private(set) dynamic var uuid = NSUUID().UUIDString
}
斯威夫特5
class IdentifiableObject : Object {
private(set) dynamic var uuid = NSUUID().uuidString
}
虽然这可行,但它确实有一个主要问题,至少在 realm 支持只读属性之前是这样。更新对象时,需要先获取存储的对象再保存。