realm io返回空对象(领域0.93.2)

时间:2015-06-29 07:33:44

标签: ios swift realm

我只是使用cocoapods将我的领域从0.91.1更新为0.93.2。

我现在在查询结果中得到空对象。所以我制作了一个简单的应用程序,只是为了从头开始测试,但我仍然得到相同的结果。

这是我的测试代码(基本上只有一个文本字段和两个按钮(添加和打印):

import UIKit
import RealmSwift

    class Person: Object {
    var name = "Empty Value"
}

class ViewController: UIViewController {

    @IBOutlet weak var nameTextField: UITextField!

    var realm = Realm()

    override func viewDidLoad() {
        super.viewDidLoad()
        println(realm.path)
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }

    @IBAction func addTapped(sender: UIButton) {
        var person = Person()
        person.name = nameTextField.text

        realm.write {
            self.realm.add(person)
            println("Person added: \(person.name)")
        }
    }

    @IBAction func printListTapped(sender: UIButton) {
        println("\n\nPeople\n")
        for person in realm.objects(Person) {
            println("Person: \(person.name)")
        }
    }
}

数据将保存到数据库中,因为它们在Realm Browser中可以看到。 但是realm.objects(Person)返回的对象都是空的。

这是" printListTapped"的输出。添加2项后的功能:

Person: Empty Value<br/>
Person: Empty Value

我真的不确定我在这里失踪了什么。提前谢谢。

1 个答案:

答案 0 :(得分:2)

这里的问题是您的name属性是在没有dynamic的情况下声明的,因此它对Realm完全不可见。如果您将其声明为dynamic var name = "Empty Value",它应该有效。