diff --git a/code/database.py b/code/database.py index 71282bb..bbc24a8 100644 --- a/code/database.py +++ b/code/database.py @@ -171,17 +171,6 @@ def insert_list(username_list, timestamp_list, content_list): except Exception as e: logging.warning(e) -def insert_translated(val_dict): - assert 'id' in val_dict.keys() - assert 'content_en' in val_dict.keys() - with Data_table() as dt: - query = ( - f'UPDATE {dt._name} ' - ' SET content_en = (%(content_en)s) ' - 'WHERE id = (%(id)s) ' - ) - dt.execute(query, val_dict) - def insert_translated_list(content_list, id_list): with Data_table() as dt: for id, content in zip(id_list, content_list): @@ -209,4 +198,29 @@ def get_all(): with Data_table() as dt: query = f'SELECT * FROM {dt._name} ORDER BY time DESC ' df = pd.read_sql_query(query, dt.con) - return df \ No newline at end of file + return df + +def insert_translated(dt, val_dict): + assert 'id' in val_dict.keys() + assert 'content_en' in val_dict.keys() + query = ( + f'UPDATE {dt._name} ' + ' SET content_en = (%(content_en)s) ' + 'WHERE id = (%(id)s) ' + ) + dt.execute(query, val_dict) + +def get_untranslated(dt): + query = ( + f'SELECT * FROM {dt._name} ' + 'WHERE content_en IS NULL ' + 'ORDER BY random() ' + 'LIMIT 1 ' + ) + df = pd.read_sql_query(query, dt.con) + if len(df)==0: return None + val_dict = { + 'id': int(df['id'][0]), + 'content': str(df['content'][0]) + } + return val_dict \ No newline at end of file