Parse platform PFUSERRefreshWithKey?

Parse platform PFUSERRefreshWithKey?,parse-platform,Parse Platform,所以我有我的当前用户。在我的用户类中有一些指针没有包含在第一次加载中。后来某个时候我需要它们 我知道我可以从currentUser获取指针,然后查询该对象。但是,我希望将该键包括/附加到currentUser对象,以便我可以在此时和以后使用它 我在解析文档中没有看到任何用于此的方法。我能想象的唯一方法是,如果我只运行一个单独的用户查询,includeKey用于我想要包含的指针,然后将检索到的对象保存为currentUser 然而,我在我的应用程序中经常这样做,我想知道在解析API中是否有一些我缺

所以我有我的当前用户。在我的用户类中有一些指针没有包含在第一次加载中。后来某个时候我需要它们

我知道我可以从currentUser获取指针,然后查询该对象。但是,我希望将该键包括/附加到currentUser对象,以便我可以在此时和以后使用它

我在解析文档中没有看到任何用于此的方法。我能想象的唯一方法是,如果我只运行一个单独的用户查询,includeKey用于我想要包含的指针,然后将检索到的对象保存为currentUser


然而,我在我的应用程序中经常这样做,我想知道在解析API中是否有一些我缺少的方便方法,比如refreshWithKey方法。

如果您的用户类中有不可用的指针,您可以使用fetchIfNeeded:

PFObject *address = [PFUser currentUser][@"address"];
[address fetchIfNeeded];
或使用块:

[address fetchIfNeededInBackgroundWithBlock:^(PFObject *object, NSError *error) {
  NSString *street = address[@"street"];
}];

这会创建一个新的地址对象,对吗?如果我在currentUser对象中查询地址指针,它会指向这个新获取的地址对象吗?不会,这不会创建任何内容。只有当您有指向其他对象的指针时,这才起作用,例如地址对象,它不是与包含指针的对象一起获取的。如果您的用户类有一个指向地址的指针,您可以使用FetchIfRequired获取这个对象(如果您还没有)。无需查询。它将在后台检查isDataAvailable,并仅在尚未获取isDataAvailable时执行获取。下次需要时,isDataAvailable将返回YES,并且不会执行提取,因此重复调用此函数的开销很小。好的,如果我执行[address FetchIfRequired],请非常清楚;如您的回答所述,那么下次我尝试访问[PFUser currentUser][@address];,那么它将出现在用户对象中?在同一会话中,是的