gpt4 book ai didi

ios - 解析快速子类关系

转载 作者:可可西里 更新时间:2023-11-01 00:14:23 24 4
gpt4 key购买 nike

我正在将解析实现到我的 swift 应用程序中。我有子类,其中一个子类有一个成员对象,它是另一个解析子类。当我尝试访问该对象时,应用程序收到“由于未捕获的异常‘NSInvalidArgumentException’而终止应用程序,原因:‘-[fve.Workout sets]:无法识别的选择器发送到实例 0x1740d0d10’”

知道如何访问本身是 PBObject 子类的 PFObject 子类的元素吗?

这是我声明对象的方式:

class Workout: PFObject, PFSubclassing {
@NSManaged var date: NSDate
@NSManaged var workoutTime: Int
@NSManaged var sets: [ExerciseSet]
...
}

class ExerciseSet: PFObject, PFSubclassing {
@NSManaged var exercise: Exercise
@NSManaged var sets: [SingleSet]
...
}

当我尝试访问该字段时,这会导致崩溃:

for workout in historicalWorkoutsParse {
println("workout \(workout)")
let exerciseSets = workout.sets
println("exerciseSet: \(exerciseSets)")
}

即使我确实看到对象中存在数据:

workout <Workout: 0x1740cf8f0, objectId: A3218Oxiuh, localId: (null)> {
date = "2015-09-05 19:39:43 +0000";
sets = (
"<ExerciseSet: 0x1740cf960, objectId: V54sAUKSMf, localId: (null)>"
);
user = "<PFUser: 0x174109240, objectId: LbeTd8GqwU, localId: (null)>";
workoutTime = 0;
}

谢谢!

最佳答案

如果您使用PFSubclassing,您需要调用registerSubclass在你可以使用类(class)之前。它还必须在 Parse.setApplicationId 调用之前完成:

Workout.registerSubclass()
ExerciseSet.registerSubclass
//Parse.setApplicationId

关于ios - 解析快速子类关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32417463/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com