【发布时间】:2015-12-30 16:02:56
【问题描述】:
我是 Realm 和 iOS 的新手。我正在开发一个应用程序(用 Swift 编写),该应用程序具有用户搜索高尔夫球场的功能。我有一个包含大约 18K 课程的 JSON 文件。所以我想使用 Realm,这样我就可以在我的应用程序中快速搜索这些课程,而不会降低用户体验。我能够将我的 JSON 文件写入 Realm 浏览器,并且可以检索和搜索项目,这使其速度快了很多。
我的问题是我的应用程序委托中有代码,因为我想在应用程序启动时将 JSON 项发送到我的领域浏览器。但如果应用程序再次启动,它会再次写入 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)
}
}
}
}
}
【问题讨论】: