如何防止在列表中添加重复项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"
}
}