gpt4 book ai didi

ios - 坚持一个 RLMObject

转载 作者:搜寻专家 更新时间:2023-11-01 07:30:47 25 4
gpt4 key购买 nike

在我的应用程序中,我有一个继承自 RLMObject 的 CustomUser。

我想知道如何只为这个 CustomUser 对象存储 1 个对象?

func saveUser() {
let realm = RLMRealm.defaultRealm()

realm.beginWriteTransaction()
realm.addObject(customUser)
realm.commitWriteTransaction()
}

这段代码每次运行时都会向数据库写入一个额外的对象。多次运行代码导致数据库中对象较多。

有什么想法吗?

最佳答案

最简单的方法是查询 Realm 以检查是否有任何以前保存的对象,然后再继续添加新对象。

func saveUser() {
let realm = RLMRealm.defaultRealm()

if CustomUser.allObjects().count > 0 {
return
}

realm.beginWriteTransaction()
realm.addObject(customUser)
realm.commitWriteTransaction()
}

更高级的说明是,如果您想显式引用单个 CustomUser 对象,您可以使用 Realm 的主键功能直接查询该特定对象。有关 Realm's website 的更多信息关于如何设置类以使用主键(在 Objective-C 部分,因为看起来您使用的是 Objective-C 桥接版本)。

祝你好运!

关于ios - 坚持一个 RLMObject,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32534543/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com