gpt4 book ai didi

ios - 防止 Realm 写入 JSON 两次

转载 作者:行者123 更新时间:2023-11-28 08:49:39 26 4
gpt4 key购买 nike

我是 Realm 和 iOS 的新手。我正在开发一个应用程序(用 Swift 编写),该应用程序具有供用户搜索高尔夫球场的功能。我有一个 JSON 文件,其中包含大约 18K 个类(class)。所以我想使用 Realm,这样我就可以在我的应用程序中快速搜索这些类(class),而不会降低用户体验。我能够将我的 JSON 文件写入 Realm 浏览器,并且可以检索和搜索项目,这使得速度快了很多。

我的问题是我的 App Delegate 中有代码,因为我想在应用程序启动时将 JSON 项目发送到我的 Realm 浏览器。但是,如果应用再次启动,它会再次写入 JSON 文件,这会在我的 Realm 浏览器中创建重复的高尔夫球场。

关于我应该如何执行此操作的任何建议,以便我可以将 JSON 文件写入浏览器而不会在每次启动应用程序时都得到重复项?

谢谢!

我将 JSON 文件写入 Realm 浏览器的代码:

        let dataManager = DataManager.getGolfCoursesFromFileWithSuccess { (data) -> Void in
let json = JSON(data: data)
if let courseArray = json.array {
for course in courseArray {

let golfCourseName: String? = course["biz_name"].string
let city: String? = course["e_city"].string
let state: String? = course["e_state"].string

if golfCourseName != nil {
let course = Course()
course.name = golfCourseName!
course.city = city!
course.state = state!

let realm = try! Realm()

try! realm.write {
realm.add(course)
}
}
}
}
}

最佳答案

只需检查数据是否已存储。IE。

if try! Realm().objects(GolfCourse).count == 0 {
// your loading code here.
}

关于ios - 防止 Realm 写入 JSON 两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34532881/

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