【发布时间】:2015-12-21 13:27:07
【问题描述】:
我有一个 Realm 数据库,它保存具有不同用户 ID 的不同用户的记录。
我还有一个 UITableViewController 可以显示 Realm 查询的结果。我希望查询只返回当前用户的段落。
class PassageListController: UITableViewController {
var currentUserID: Int = NSUserDefaults.standardUserDefaults().objectForKey("currentUserID") as! Int
lazy var dataArray: Results<Passage> = { return try! Realm().objects(Passage).filter("userID == \(currentUserID)")}
问题是我收到以下错误消息:
实例成员“currentUserID”不能用于类型“PassageListController”
尽管尝试延迟加载 Realm 查询。解决这个问题的最佳实践方法是什么?
期待一些解决方案:
- 我无法在 viewDidAppear() 中加载查询,因为无法定义空的 Realm Result 并且它需要在整个控制器中都可以访问。
- 我可以将 currentUserID 设置为全局变量,但这违反了我的原则。
【问题讨论】: