Parse的CurrentUser不会保留刷新的数据

时间:2015-01-26 12:02:55

标签: ios swift parse-platform

使用Parse for iOS,我将_User的表修改为有一个名为“Friends”的字段,这是一个指向其他_Users的指针数组(顺便说一下,我还有其他字段)。

当我拨打PFUser.currentUser()时,我在用户对象中看不到此好友字段。所以我打电话给PFUser.currentUser().fetch()(因为refresh方法似乎不存在了)我终于在currentUser对象中有了friends字段。

但是,只要退出应用程序,此字段就会丢失。与当前用户的所有其他字段不同,它似乎不会保存在本地。

我应该如何强制刷新缓存的当前用户?

2 个答案:

答案 0 :(得分:1)

根据parse.com本身和one of their posts,没有其他方法可以让您的用户保持最新状态:

  

saveEventually目前没有通过任何缓存写入,   如果应用已重新启动,则包括currentUser。你需要   定期调用fetch以使其保持最新状态。我们知道这一点   是不方便的,并正在研究如何使其更好地工作   你。

答案 1 :(得分:1)

您确定要让您的用户对象包含一个像这样的数组的值吗?我显然不知道您的使用应用程序,但我建议使用PFRelation。它就像一个数组一样工作,但Parse Framework提供了许多附加功能。

至于你的具体问题,它可能需要处理Parse。也许他们不会自动检索和保存对象上的数组。这是我的猜测,因为数组可能包含谁知道其中有多少数据。我仍然不知道为什么他们在获取数据后不会在本地保存这些数据。

我的建议可能略高于顶部,但最有可能是最好的结果。利用CoreData等本地数据库甚至ParseLocalDatastore。然后封装Parse框架以拥有您自己的User对象,您可以在其中存储信息,这也可以通过您的数据库维护持久性。