MCPcopy Create free account
hub / github.com/dataease/SQLBot / fieldEnum

Function fieldEnum

backend/apps/datasource/crud/datasource.py:372–386  ·  view source on GitHub ↗
(session: SessionDep, id: int)

Source from the content-addressed store, hash-verified

370
371
372def fieldEnum(session: SessionDep, id: int):
373 field = session.query(CoreField).filter(CoreField.id == id).first()
374 if field is None:
375 return []
376 table = session.query(CoreTable).filter(CoreTable.id == field.table_id).first()
377 if table is None:
378 return []
379 ds = session.query(CoreDatasource).filter(CoreDatasource.id == table.ds_id).first()
380 if ds is None:
381 return []
382
383 db = DB.get_db(ds.type)
384 sql = f"""SELECT DISTINCT {db.prefix}{field.field_name}{db.suffix} FROM {db.prefix}{table.table_name}{db.suffix}"""
385 res = exec_sql(ds, sql, True)
386 return [item.get(res.get('fields')[0]) for item in res.get('data')]
387
388
389def updateNum(session: SessionDep, ds: CoreDatasource):

Callers 1

innerFunction · 0.85

Calls 5

exec_sqlFunction · 0.90
get_dbMethod · 0.80
getMethod · 0.65
firstMethod · 0.45
filterMethod · 0.45

Tested by

no test coverage detected