'Fixes payload of POST request'

def fix_payload_post(self, event_id, data):

    if ('track_id' in data):
        data['track'] = self.get_object(TrackModel, data.get('track_id'), event_id)
    if ('microlocation_id' in data):
        data['microlocation'] = self.get_object(MicrolocationModel, data.get('microlocation_id'), event_id)
    if ('session_type_id' in data):
        data['session_type'] = self.get_object(SessionTypeModel, data.get('session_type_id'), event_id)
    if ('speaker_ids' in data):
        data['speakers'] = InstrumentedList((SpeakerModel.query.get(_) for _ in data.get('speaker_ids', []) if (self.get_object(SpeakerModel, _, event_id) is not None)))
    data['event_id'] = event_id
    data = self._delete_fields(data)
    return data
