我在Swift中为我的PFObject子类设置了这个非常简单的设置。
以下是代码中的内容:
富
import Foundation
class Foo : PFObject, PFSubclassing
{
class func parseClassName() -> String!
{
return "Foo"
}
}
BAR1
import Foundation
class Bar1 : Foo {}
BAR2
import Foundation
class Bar2 : Foo {}
AppDelegate didFinishLaunching
Foo.registerSubclass()
Bar1.registerSubclass()
Bar2.registerSubclass()
Parse.setApplicationId("APP_ID", clientKey: "CLIENT_KEY")
然后我在运行时收到此错误:
Tried to register both _TtC9CardForge4Bar1 and _TtC9CardForge4Bar2 as the native
PFObject subclass of Foo. Cannot determine the right class to use because neither
inherits from the other.
看来我不能拥有一个PFObject
子类的多个子类,但我在文档中看不到任何内容。这里发生了什么?什么是原生子类?
答案 0 :(得分:0)
我认为你不能这样做。我不明白这样做你想去哪里。
我认为解析子类化的最佳方法是:一个表的一个子类。为Parse子类化最重要的目标是管理您的属性。因此,将所有自定义属性复制到自定义类。并注册这个子类。之后,您可以为方法创建其他子类(未注册解析)或保护您的属性。
答案 1 :(得分:0)
从Parse iOS SDK 1.6.2开始,我可以确认您可以拥有PFObject
的子类的子类,并且它们可以正常工作。
即。可以拥有class Foo : Bar
和class Bar : PFObject
,您可以保存Foo
类型的对象并查询它们。它只是有效。