我在我的集合视图控制器的viewDidLoad中调用以下函数。我试图从我的解析服务器的User类中检索一个值。我的问题是没有调用for循环,它不允许从列中检索字符串值并存储在数组中。
func loaduuid(){
let query = PFQuery(className: "_User")
query.whereKey("uuid", equalTo: guestname.last!)
query.findObjectsInBackgroundWithBlock ({ (objects:[PFObject]?, error:NSError?) -> Void in
if error == nil {
print("no error")
for object in objects!{
// add found data to arrays
self.newuuid.append(object.valueForKey("uuid") as! String)
print("uuid added")
}
}
else {
print(error?.localizedDescription)
}
})
}
为什么我的for循环没有被调用,我该如何解决?
答案 0 :(得分:0)
您应该尝试print(objects!.count)
来查看PFObjects数组是否为空,这可能就是为什么不迭代数组的原因。如果它打印0,则表示您的查询未在服务器上找到任何结果。
答案 1 :(得分:0)
如果用户已登录,则您可以从本地设备的_User类获取其行的所有信息,您可以使用
进行访问。let uuid = PFUser.currentUser()!["uuid"] as! String
或者如果_User行中有一些更新的值,您可以使用
PFUser.currentUser()?.fetchInBackgroundWithBlock...