调用Realm()。objects时使用未实现的初始化程序'init(realm:schema :)'

Guy*_*Guy 2 realm ios swift

我正在尝试通过使用来检索领域的对象

Realm(path: Realm.defaultPath).objects(Fruits)
Run Code Online (Sandbox Code Playgroud)

这是我得到的结果:

12: 7: fatal error: use of unimplemented initializer 'init(realm:schema:)' for class DB.Fruits
Run Code Online (Sandbox Code Playgroud)

该对象只有以下init:

required init() {
        super.init()
        nextPrimaryKey()
    }
Run Code Online (Sandbox Code Playgroud)

我已经阅读了有关init()问题的所有信息,但是它们都不能解决问题(包括这个几乎完全一样的问题)。知道如何解决吗?

mcl*_*inj 5

现在支持覆盖init 。但是,convenience init如果您将用作指定的初始值设定项,则可能会遇到此问题required init。可以通过删除来解决此问题required init。

例如:

required init() {
    super.init()
}

convenience init(dict: [String: AnyObject]) {
    self.init()

    // custom init work
}
Run Code Online (Sandbox Code Playgroud)

应该变成:

convenience init(dict: [String: AnyObject]) {
    self.init() // still calling self.init(), not super.init()

    // custom init work
}
Run Code Online (Sandbox Code Playgroud)