def create_post(self, group, params): category_ids = set([str(x[0]) for x in self.db.session.query(Category.id).order_by(Category.id).all()]) if not category_ids.issubset(params.keys()): return self.create_get("Please select a winner for every category") if params["selection_name"] == "": return self.create_get("Please select a name for your selections") selection = Selection(params["selection_name"]) selection.group_id = group.id self.db.session.add(selection) self.db.session.commit() picks = list() for category_id in category_ids: nominee_id = int(params[category_id]) pick = Pick(selection.id, category_id, nominee_id) picks.append(pick) self.db.session.add_all(picks) self.db.session.commit() return self.get(group=group, selection_id=selection.id)