基础页面

This commit is contained in:
leo
2024-03-06 23:11:39 +08:00
parent a112b4204c
commit 4742e29d21
4 changed files with 112 additions and 23 deletions

56
main.py
View File

@@ -6,12 +6,18 @@ from loguru import logger
from bak.init_data import BatchDataRead
from db_utils import BatchData, session
PAGE_TITLE = "training data configer"
st.set_page_config(
page_title=PAGE_TITLE,
page_icon="🧊",
initial_sidebar_state="expanded",
)
def get_data_from_db():
logger.debug("init")
db_objs = session.query(BatchData).all()
res = (BatchDataRead.from_orm(db_obj).dict() for db_obj in db_objs)
return list(res)
return [BatchDataRead.from_orm(db_obj).dict() for db_obj in db_objs]
st.session_state.setdefault('data_table', get_data_from_db())
@@ -19,6 +25,10 @@ st.session_state.setdefault('data_table', get_data_from_db())
df = pd.DataFrame(data=st.session_state.data_table)
def train():
...
def update_handler():
edited_rows = st.session_state['edited_info'].get('edited_rows')
for id_, update_data in edited_rows.items():
@@ -29,25 +39,25 @@ def update_handler():
session.commit()
edited_df = st.data_editor(df, key="edited_info",
hide_index=True,
use_container_width=True,
on_change=update_handler,
column_order=('id', 'year', 'census_batch', 'id_code', 'precision', 'is_train', 'is_validation'),
column_config={
"year": st.column_config.NumberColumn("年份", format="%d", ),
'census_batch': "普查批次",
'id_code': "编号",
'precision': "精度",
'is_train': "是否是训练集",
'is_validation': "是否是验证集",
})
data_frame_container = st.container()
with data_frame_container:
edited_df = st.data_editor(
df, key="edited_info",
hide_index=True,
use_container_width=True,
on_change=update_handler,
column_order=('id', 'year', 'census_batch', 'id_code', 'precision', 'is_train', 'is_validation'),
column_config={
"year": st.column_config.NumberColumn("年份", format="%d", ),
'census_batch': "普查批次",
'id_code': "编号",
'precision': "精度",
'is_train': "是否是训练集",
'is_validation': "是否是验证集",
})
# favorite_command = edited_df.loc[edited_df["id"].idxmax()]
# data_table_change_info = st.session_state['edited_info']
# logger.debug(f"{data_table_change_info=}")
# st.rerun()
# st.session_state.data_table = get_data_from_db()
# st.rerun()
with st.sidebar:
st.divider()
st.text_input("username")
st.divider()
st.button("启动", on_click=train)