gpt4 book ai didi

快速解析如何在本地数据存储中保存对象并显示它们?

转载 作者:可可西里 更新时间:2023-11-01 00:52:32 25 4
gpt4 key购买 nike

我已经启用了 local datastore in app delegate ,我做了一个查询,但如果有 no internet,我如何保存该对象以查看它们?

这是我的查询:

query.findObjectsInBackgroundWithBlock {
(objects, error) -> Void in
if error == nil && objects != nil
{
self.messages = objects!
for object in objects! {
inboxphotos.append(object.objectForKey("photo") as! PFFile)
inboxusers.append(object.objectForKey("username") as! String) }
}
}

现在我该怎么做 local query查看此 objects

最佳答案

在调用 findObjectsInBackgroundWithBlock 之前,

query.fromLocalDatastore()

这将强制您的查询从 localDataStore 中提取。您的代码应如下所示:

query.fromLocalDatastore()
query.findObjectsInBackgroundWithBlock {
(objects, error) -> Void in
if error == nil && objects != nil
{
self.messages = objects!
for object in objects! {
inboxphotos.append(object.objectForKey("photo") as! PFFile)
inboxusers.append(object.objectForKey("username") as! String) }
}
}

为了在本地保存对象,您必须首先启用 localDataStore:

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
Parse.enableLocalDatastore()
Parse.setApplicationId("parseAppId", clientKey: "parseClientKey")
}
}

使用 localDataStore 保存对象的推荐方法是使用 saveEventually:

myObject.saveEventually()

您也可以使用 .pinInBackground() 将对象“永久”保存在 localDataStore 中。固定对象可确保当您再次从服务器获取本地对象时自动更新它们。是实现服务器数据离线缓存的理想方式。

关于快速解析如何在本地数据存储中保存对象并显示它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32203746/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com