【发布时间】:2016-07-21 20:37:15
【问题描述】:
如何防止向RealmSwift 中的列表添加重复项?
我将User 作为领域对象,但真正的数据源是服务器(只需使用领域在本地缓存用户)。当我从服务器获取当前用户数据时,我想确保存储在领域中的用户具有来自服务器的所有播放列表(以及它们同步的曲目列表等)。我担心如果我从服务器循环遍历这些列表,附加到myUser.playlists,我最终可能会多次将相同的播放列表添加到用户的播放列表列表中。
class User: Object {
dynamic var name = ""
dynamic var id = ""
let playlists = List<Playlist>()
override class func primaryKey() -> String {
return "id"
}
}
class Playlist: Object {
dynamic var name = ""
dynamic var id = ""
let tracks = List<Song>()
override class func primaryKey() -> String {
return "id"
}
}
class Song: Object {
dynamic var title = ""
let artists = List<Artist>()
dynamic var id = ""
override class func primaryKey() -> String {
return "id"
}
}
class Artist: Object {
dynamic var name = ""
dynamic var id = ""
override class func primaryKey() -> String {
return "id"
}
}
【问题讨论】:
标签: ios swift realm realm-list