From fc99723b2ec32e6c468d69b00608ac4b3fd1439c Mon Sep 17 00:00:00 2001 From: Colin Maudry Date: Mon, 19 Jan 2026 11:43:47 +0100 Subject: [PATCH] =?UTF-8?q?Gestion=20des=20colonnes=20ajout=C3=A9es=20mais?= =?UTF-8?q?=20absentes=20du=20sch=C3=A9ma?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/callbacks.py | 2 +- src/utils.py | 10 +++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/callbacks.py b/src/callbacks.py index d5f1522..62df9ed 100644 --- a/src/callbacks.py +++ b/src/callbacks.py @@ -21,7 +21,7 @@ def get_top_org_table(data, org_type: str): dff_nb = dff_nb.fill_null("") dff_nb = format_values(dff_nb) columns, tooltip = setup_table_columns( - dff_nb, hideable=False, exclude=[f"{org_type}_id"] + dff_nb, hideable=False, exclude=[f"{org_type}_id"], new_columns=["Attributions"] ) data = dff_nb.to_dicts() data = add_links_in_dict(data, f"{org_type}") diff --git a/src/utils.py b/src/utils.py index aef7acb..edbddf5 100644 --- a/src/utils.py +++ b/src/utils.py @@ -334,7 +334,9 @@ def sort_table_data(lff: pl.LazyFrame, sort_by: list) -> pl.LazyFrame: return lff -def setup_table_columns(dff, hideable: bool = True, exclude: list = None) -> tuple: +def setup_table_columns( + dff, hideable: bool = True, exclude: list = None, new_columns: list = None +) -> tuple: # Liste finale de colonnes columns = [] tooltip = {} @@ -345,8 +347,10 @@ def setup_table_columns(dff, hideable: bool = True, exclude: list = None) -> tup if column_object: column_name = column_object.get("title") else: - # Si le champ n'est pas dans le schéma, on le skip - print(f"Champ innatendu : {column_id}") + if column_id not in new_columns: + # Si le champ n'est pas dans le schéma et pas annoncé, on le skip + print("Champ innatendu : ") + print(dff[column_id].head()) continue column = {