【问题标题】:RealmSwift: Retrieved Realm Object properties not populated to instance methods [Swift]RealmSwift:检索的领域对象属性未填充到实例方法 [Swift]
【发布时间】:2018-11-30 00:24:56
【问题描述】:

所以我可能遗漏了一些小东西,但我创建了一个领域对象类,并有一个方法可以将该对象发布到我们的后端。

当我获取对象时,我可以看到来自Results 的属性 对象。

如果我调用我的 post 方法,self.myProperty 要么是 nil,要么是我设置的任何默认值。

通用示例:

领域对象类

import SwiftyJSON

@objcMembers class Person:Object {

     var firstName:String = ""
     var lastName:String = ""

     func post() {
             print("First Name: ", self.firstName) // Prints "First Name: "
             print("Last Name: ", self.lastName) // Prints "Last Name: "
     }

}

检索对象

let people = realm.objects(Person.self)

print("First Name: ", people[0].firstName) // Prints "First Name: Evan"
print("Last Name: ", people[0].lastName) // Prints "Last Name: Stoddard"

people[0].post()
// Prints "First Name: "
// Prints "Last Name: "

因此,当我在该对象范围之外访问它们时,检索到的对象的属性就在那里。似乎检索到的对象的实例方法不起作用。

同样,我可能遗漏了一些非常小的东西,但我似乎找不到任何与此问题相关的文档。

编辑: 使标题更具描述性

【问题讨论】:

    标签: swift realm


    【解决方案1】:

    在 RealmSwift 中,属性应该标记为

    @objc dynamic var ...
    

    您通过类注释获得的@objc,但我会添加动态修饰符并重新测试。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-01
      • 1970-01-01
      相关资源
      最近更新 更多