我试图将解析查询的结果附加到usersData
struct Data {
var FirstName:String!
var LastName:String!
var Gender:String!
var Age:String!
}
在课堂上我有
var usersData = [Data]()
我正在使用它
func parseUsersData(completionHandler: [Data] -> Void) {
var usersDataArray = [Data]()
let query = PFQuery(className: "_User")
query.fromLocalDatastore()
query.findObjectsInBackgroundWithBlock { (objects, error) -> Void in
if error == nil {
if let user = objects as? [PFObject]! {
for object in user! {
var singleData = Data()
singleData.FirstName = object["firstName"] as! String
singleData.LastName = object["lastName"] as! String
singleData.Gender = object["gender"] as! String
singleData.Age = object["age"] as! String
usersDataArray.append(singleData)
}
}
completionHandler(usersDataArray)
}
}
}
最后,我正在尝试这样做:
编辑:为了澄清,我需要将查询中的数据userDataArray传递给数组usersData。
parseUsersData { (usersDataArray) -> Void in
usersData.append(usersDataArray)
}
我得到的错误是
Cannot convert value of type '[Data]' to expected argument type 'Data'
答案 0 :(得分:0)
在您的上一个代码块中,您似乎将数据数组附加到Data对象s = s.substring(ind,s.indexOf(",", ind));
,这会导致我认为错误。你的意思是写usersData.append(usersDataArray)
哪个更有意义吗?
答案 1 :(得分:0)
您正在尝试将数据数组添加到正在查找数据对象的数组中。添加一个处理数据数组的新结构,然后更改usersData以查找DataArray:
struct DataArray {
var array = [Data]()
}
然后换行:
var usersData = [DataArray]()
答案 2 :(得分:0)
usersDataArray
是一个数组。要将数组添加到其他数组,请更喜欢appendContentsOf
:
usersData.appendContentsOf(usersDataArray)