gpt4 book ai didi

ios - 如何从 Parse 中获取多个对象以保存在 Swift 中的 Local DataStorage 中?

转载 作者:行者123 更新时间:2023-11-28 08:49:52 25 4
gpt4 key购买 nike

我正在从 Parse 获取对象并将其显示在我的 UI 中。现在我正在努力将数据保存在 Parse 的 Local DataStorage 中。我查看了以下 Parse 示例:

let query = PFQuery(className: "GameScore")
query.fromLocalDatastore()
query.getObjectInBackgroundWithId("xWMyZ4YE").continueWithBlock {
(task: BFTask!) -> AnyObject in
if let error = task.error {
// Something went wrong.
return task;
}

// task.result will be your game score
return task;
}

上面的例子是为了获取 1 个对象。我不知道如何对多个对象执行相同的操作。我正在通过我的以下代码获取对象:

let query:PFQuery = PFQuery(className: "Events")
query.findObjectsInBackgroundWithBlock {
(object, error) -> Void in
if object != nil
{
if(object!.count != 0)
{
for messageObject in object! {
let eventName:String? = (messageObject as! PFObject)["EventName"] as? String
let createdBy:String? = (messageObject as! PFObject)["CreatedBy"] as? String
let eventDate:String? = (messageObject as! PFObject)["EventDate"] as? String
objModalClass.eveName = eventName!
objModalClass.crtedBy = createdBy!
objModalClass.eveVenue = eventVenue!

}
}
}
}

在我上面的代码中,如何将所有获取的对象保存在本地 DataStorage 中的 objModalClass 中。请详细解释。

最佳答案

你应该看看对象固定。只要您启用了本地数据存储,就可以通过引脚名称检索对象,以及通过取消固定从本地数据存储中释放这些对象。来自文档:

“递归地将对象及其指向的每个对象异步存储在本地数据存储中。”

对于单个对象:

public func pinInBackgroundWithName(name: String, block:PFBooleanResultBlock?)

对于许多对象:

public class func pinAllInBackground(objects: [AnyObject]?, withName name: String, block: PFBooleanResultBlock?)

互补的 unpinWithName(name: String) 可用于这两种情况。固定仅适用于 PFObject 及其子类。

您也可以像这样从引脚名称查询

var query = PFQuery.queryWithClassname("PFObject_subclass")
query.fromPinWithName("Your_given_pin_name")
query.findObjectsInBackgroundWithBlock { (objects: [PFObject]?, error: NSError?) -> Void in
//objects from pin name returned.
}

关于ios - 如何从 Parse 中获取多个对象以保存在 Swift 中的 Local DataStorage 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34517053/

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