extend MetaDataColumn by adding column for name of column for referenced tables
This commit is contained in:
@@ -43,7 +43,7 @@ class KontorDB:
|
||||
meta_data = {}
|
||||
order = 0
|
||||
for (_, column) in self.session.query(MetaDataTable, MetaDataColumn).filter(MetaDataTable.id == MetaDataColumn.table_id).filter(MetaDataTable.table_name == table_name).filter(MetaDataColumn.is_shown == 1).all():
|
||||
meta_data[order] = {'column': column.column_name, 'label': column.column_label, 'order': column.column_order}
|
||||
meta_data[order] = {'column': column.column_name, 'label': column.column_label, 'order': column.column_order, 'ref_column': column.ref_column}
|
||||
order += 1
|
||||
return meta_data
|
||||
|
||||
@@ -70,7 +70,7 @@ class KontorDB:
|
||||
# print(f"KontorDB.get_data: {row}")
|
||||
data.append(list(row))
|
||||
cursor.close()
|
||||
print(f"KontorDB.getData: return {len(data)}")
|
||||
# print(f"KontorDB.getData: return {len(data)}")
|
||||
if table_name == 'comic' and len(where_clause) == 0:
|
||||
data.clear()
|
||||
comics = self.session.query(Comic).all()
|
||||
@@ -79,8 +79,13 @@ class KontorDB:
|
||||
row = []
|
||||
for order in columns.keys():
|
||||
column_name = columns[order]['column']
|
||||
if column_name == 'publisher_id':
|
||||
row.append(item.publisher.name)
|
||||
if str(column_name).endswith("_id"):
|
||||
ref_table = column_name[:-3]
|
||||
# print(f"{ref_table=}")
|
||||
ref = getattr(item, ref_table)
|
||||
value = getattr(ref, "name")
|
||||
# print(f"{value=}")
|
||||
row.append(value)
|
||||
else:
|
||||
row.append(getattr(item, column_name))
|
||||
# print(repr(row))
|
||||
|
||||
Reference in New Issue
Block a user