def _get_model_fields()

in lib/filter_lib/src/enum_generator.py [0:0]


def _get_model_fields(model: Type[DeclarativeMeta]) -> List[str]:
    mapper: Mapper = inspect(model)
    relations = [
        attr
        for attr in inspect(model).attrs
        if isinstance(attr, RelationshipProperty)
    ]
    relation_fields = [
        rel.key + "." + col.key
        for rel in relations
        for col in rel.entity.local_table._columns
    ]
    fields = [
        attr.key
        for attr in mapper.attrs
        if isinstance(attr, ColumnProperty) and attr.columns
    ]
    fields.extend(relation_fields)
    return fields