从不同的线程/会话中更新Swift中的Realm对象

时间:2016-01-25 20:54:39

标签: ios swift realm

保存领域对象后,我执行以下操作

 try! self.realm.write{
       article.imageUri = path
       try! self.realm.commitWrite()
 }

虽然我仍然可以在模拟器的同一会话中看到该值,但在重新启动或重新运行应用程序后,上面的代码段中的更新值未显示,但其余数据仍然存在

使用Alamofire结果

获取数据后完成此更新

1 个答案:

答案 0 :(得分:3)

首先,当您使用块调用write时,您不需要在块内指定try! self.realm.commitWrite()。根据Realm的例子,这会自动呼叫你:

try! realm.write {
  realm.add(myDog)
}

您之前调用self.realm.commitWrite()

时,只需拨打self.realm.beginWrite()即可

其次,很难确切地说为什么你可能没有看到更多上下文的数据更新。那篇文章是什么?在哪里设置? Realm是如何加载/存储的?您是否在两次运行中删除模拟器应用程序?这里有很多变数。