def store_award(data, event): award = Award(id=Award.render_key_name(data['event_key'], data['award_type'])) award.event = ndb.Key(Event, data['event_key']) award.award_type_enum = data['award_type'] award.year = data['year'] award.name_str = data['name'] award.event_type_enum = event.event_type_enum recipient_list_fixed = [] team_keys = [] for recipient in data['recipient_list']: if recipient['team_key']: team_keys.append(ndb.Key(Team, recipient['team_key'])) recipient_list_fixed.append(json.dumps({ 'awardee': recipient['awardee'], 'team_number': int(recipient['team_key'][3:]) if recipient['team_key'] else None, })) award.recipient_json_list = recipient_list_fixed return AwardManipulator.createOrUpdate(award)