从核心数据检索NSOrderedSet它铸造于实体managedObjectSubclasss
林做健身应用学习的核心数据,我发现,我需要让用户存储每进行锻炼作为WorkoutLog项目,在那里,应该有一系列表示锻炼表现的锻炼日志(它包含每个升降机以及对实际锻炼设计的参考)。
问题是,过了一段时间,我意识到我需要对这些命令进行排序,以便下一次我想向用户显示其锻炼时,执行的顺序应该是相同的。
所以我检查了图像右上方的“有序”,现在我的代码急需更新。我试图尽可能多地阅读关于使用NSOrderedSet
以及如何从核心数据获取它们然后操作它们,但我没有真正发现太多用处。 (我有在Objective-C没有experice)
例如我的代码,曾经是:
static func deleteWorkoutLog(_ workoutLogToDelete: WorkoutLog) {
guard let exerciseLogsToDelete = workoutLogToDelete.loggedExercises as? Set<ExerciseLog> else {
print("error unwrapping logged exercises in deleteWorkoutLog")
return
}
我得到的错误:.../DatabaseFacade.swift:84:77:从投放] NSOrderedSet?到无关类型“集合”总是失败
因此,关于集合和核心数据的知识已不再适用。
我远离编程专家,但我非常渴望学习如何访问loggedExercises
实例。
TLDR;有没有办法将NSOrderedSet投射到我可以使用的东西上?我们通常如何从核心数据处理NSManagedSets?我们将它们转换为数组还是MutableSet?我非常感谢一个或两个关于如何开始检索和使用这些有序集的例子!
感谢
由用户任意订制的练习,或者是他们根据日期设定的顺序? –
@JonRose我希望用户能够随意安排练习。我可能会给他们一个索引,但是我认为使用有序集合会更合适! –