我有以下关系:
播放列表可能有一对多的歌曲,而歌曲可能属于一对多的播放列表。
我的问题在于获取特定播放列表中歌曲的顺序 - 例如,
- 在播放列表 1 中,顺序可能为 3,
- 在播放列表 2 中,顺序可能为 1,
- 在播放列表 3 中,顺序可能是 5,等等。
此外,可以更改播放列表中歌曲的顺序,因为它们在表格视图中列出。
我现在想跟踪订单。
我尝试了以下方法:
- 为 Song 实体创建一个新属性“PlaylistOrders” - 使用代表订单的 NSSet(播放列表的订单和 ManagedObjectId),
- 创建一个名为“PlaylistOrders”的新实体并将其连接到“Song”。此新实体还包含一个可转换的 objectId (ManagedObjectId)。
这两种方法似乎都非常容易出错 - 此外,我经常收到警告,例如“'NSKeyedUnarchiveFromData'不应该用于取消归档,将在未来的版本中删除”。
有没有更好、更复杂的方法在不同的播放列表中存储和检索歌曲的顺序?