首先,我检索所有对象的ID,然后尝试通过其ID获取特定对象,但它返回nil,尽管检索过程始终成功。
func getObjectID () {
var query = PFQuery(className: "Main")
// get the actual data
query.orderByDescending("createdAt")
query.findObjectsInBackgroundWithBlock ({
(objects: [AnyObject]?, error: NSError?) -> Void in
if error != nil || objects == nil {
println("Error retrieving data")
} else {
if let objects = objects as? [PFObject] {
for object in objects {
self.objectsID.append((object.objectId)!)
}
println(self.objectsID)
}
}
})
}
上述过程总是成功,当我打印ID时,它显示的完全与Parse一样。
func retrieveData () {
var objectID: String = objectsID[0]
println(objectID) // <- Success!
var query = PFQuery(className: "Main")
// get the actual data
query.getObjectInBackgroundWithId(objectID)// <- Problem here {
(object: PFObject?, error: NSError?) -> Void in
if error != nil || object == nil {
println("Error retrieving data, \(error)" ) // Stops here and gives an Error!
} else {
//Some code
}
}
}
获取ObjectID
的过程总是成功的,当我打印它时,它总是显示完美,但不知何故它不起作用,应用程序给了我这个错误:
Error retrieving data, nil
但是当我像这样输入实际的Id时:"ZXolF5cdip"
该对象被成功检索。有什么想法吗?