Eu deveria estar usando QuerySelectField e lambda e adicionado repr nos meus modelos. Isto é o que funcionou para mim:
Forms.py
coi_name = QuerySelectField(label='COI', query_factory=lambda: db.session.query(Coi).filter_by(active=1), get_pk=lambda coi_id: coi_id, get_label=lambda coi_name: coi_name, allow_blank=True)
Models.py
def __repr__(self):
return '{}'.format(self.coi_name)