我有一个数组 objectIds = ["LlbAXkqOL4", "v7lSgUunbR"]
如果我只有一个对象id,那么我可以使用,
query.getObjectInBackgroundWithId("A2332xsdas2")
由于我有很多 objectId,因此我遵循以下代码:
let userQuery = PFUser.query()
userQuery?.whereKey("username", equalTo: self.user!.username!)
userQuery?.findObjectsInBackgroundWithBlock {
(object, error) -> Void in
if object != nil
{
for messageObject in object! {
self.importedArray = ((messageObject as! PFObject)["AllEventsId"] as? [String]!)!
println("importedArray = \(self.importedArray)")
}
}
}
var query:PFQuery = PFQuery(className: "Events")
query.whereKey("objectId", containedIn: self.importedArray)
query.whereKey("EventSTDTime", greaterThan: zDate)
query.findObjectsInBackgroundWithBlock {
(object, error) -> Void in
if object != nil
{
println(objects)
}
}
但是这个方法不起作用,因为它获取了 Events
类下的所有 id
最佳答案
不确定您的请求为何返回整个类(class)信息。但这里的重点是解析后台方法异步运行,你不能迭代它们。
可能适合您的解决方案如下:
var query:PFQuery = PFQuery(className: "Events")
query.whereKey("objectId", containedIn: objectIds)
query.findObjectsInBackgroundWithBlock({ (objects, error) -> Void in
println(objects)
})
关于ios - 如何在 Parse 中获取具有对象 ID 数组的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32503841/