diff --git a/src/aiidalab_qe/app/utils/search_jobs.py b/src/aiidalab_qe/app/utils/search_jobs.py index a7c44c61..bf3d81f8 100644 --- a/src/aiidalab_qe/app/utils/search_jobs.py +++ b/src/aiidalab_qe/app/utils/search_jobs.py @@ -37,14 +37,22 @@ def load_data(self): results = qb.all() df = pd.DataFrame(results, columns=headers) - for index, row in df.iterrows(): - df.at[index, "Creation time"] = row["ctime"].strftime("%Y-%m-%d %H:%M:%S") - df.at[index, "Delete"] = ( - f"""Delete""" + # Check if DataFrame is not empty + if not df.empty: + df["Creation time"] = df["ctime"].apply( + lambda x: x.strftime("%Y-%m-%d %H:%M:%S") ) - df.at[index, "Inspect"] = ( - f"""Inspect""" + df["Delete"] = df["PK"].apply( + lambda pk: f'Delete' ) + df["Inspect"] = df["PK"].apply( + lambda pk: f'Inspect' + ) + else: + # Initialize empty columns for an empty DataFrame + df["Creation time"] = pd.Series(dtype="str") + df["Delete"] = pd.Series(dtype="str") + df["Inspect"] = pd.Series(dtype="str") return df[ [ "PK",