SWIFT:从 Parse 中检索数据并将其附加到键值字典中

SWIFT: Retrieve data from Parse and append it to a key value dictionary

我已从 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”为真),我希望将其附加到字典中)。我的问题是:

  1. 我将如何定义字典?
  2. 我将使用什么代码将检索到的数据附加到以下 'key value' 字典格式中? -

    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"]]

这个怎么样:

    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
    }