我从Parse检索数据,我想以下列格式将其附加到词典中 -
var guests = ["Event 1": ["Guest 1", "Guest 2", "Guest 3"], "Event 2": ["Guest 1", "Guest 2"], "Event 3": ["Guest 1", "Guest 2"], "Event 4": ["Guest 1", "Guest 2"]]
使用以下代码,我已经能够成功检索以下数据,但是我在解决如何将其附加到词典时遇到了问题 -
//Retrieve guestlist data
let query = PFQuery(className:"GuestList")
query.whereKey("Family", equalTo: "Family 1")
query.findObjectsInBackgroundWithBlock { (objects: [PFObject]?, error: NSError?) -> Void in
if error == nil {
if let objects = objects! as? [PFObject] {
//print(objects)
//self.objectArray.removeAll()
for object in objects {
//what code should I add here to append the object values into the dictionary
print(object)
}
self.tableView.reloadData()
}
} else {
print(error)
}
}
}
}
有四个事件可以邀请特定的访客(在“(eventName)RSVP”列中用真/假表示)。如果邀请客人参加活动(即“(eventName)RSVP”为真),我希望将其附加到字典中)。我的问题是:
我将使用哪些代码将检索到的数据附加到以下“键值”字典格式中? -
var guests = [“Event 1”:[“Guest 1”,“Guest 2”,“Guest 3”],“Event 2”:[“Guest 1”,“Guest 2”],“Event 3” :[“Guest 1”,“Guest 2”],“Event 4”:[“Guest 1”,“Guest 2”]]
答案 0 :(得分:1)
这个怎么样:
func retrieveGuestlist() -> [String : [String]] {
var guestList = [String : [String]]()
let eventList = ["Hindu", "Reception", "Sangreet", "Tibetan"]
for event in eventList { guestList[event] = [String]() }
let query = PFQuery(className:"GuestList")
query.whereKey("Family", equalTo: "Family 1")
query.findObjectsInBackgroundWithBlock { (objects: [PFObject]?, error: NSError?) -> Void in
if error == nil {
if let family = objects {
for guest in family {
for event in eventList {
if let invited = guest.valueForKey("\(event)RSVP") as? Bool {
if invited {
guestList[event]!.append(guest.valueForKey("GuestName") as! String)
}
}
}
}
}
} else {
print(error)
}
return guestList
}