diff --git a/app/admin_service.py b/app/admin_service.py index c461af9..2a295af 100644 --- a/app/admin_service.py +++ b/app/admin_service.py @@ -79,18 +79,18 @@ def article(): "username": session.get("username"), } - - if request.method == "GET": - try: - delete_id = int(request.args.get("delete_id", 0)) - except: - return "Delete article ID must be integer!" - if delete_id: # delete article - delete_article_by_id(delete_id) - _update_context() - - elif request.method == "POST": + if request.method == "POST": data = request.form + + if "delete_id" in data: + try: + delete_id = int(data["delete_id"]) # 转成int型 + delete_article_by_id(delete_id) # 根据id删除article + flash(f'Article ID {delete_id} deleted successfully.') # 刷新页首提示语 + _update_context() + except ValueError: + flash('Invalid article ID for deletion.') # 刷新页首提示语 + content = data.get("content", "") source = data.get("source", "") question = data.get("question", "") @@ -99,9 +99,9 @@ def article(): if level not in ['1', '2', '3', '4']: return "Level must be between 1 and 4." add_article(content, source, level, question) - _update_context() title = content.split('\n')[0] flash(f'Article added. Title: {title}') + _update_context() # 这行应在flash之后 否则会发生新建的文章即点即删 return render_template("admin_manage_article.html", **context) diff --git a/app/templates/admin_manage_article.html b/app/templates/admin_manage_article.html index 272b54e..5849e10 100644 --- a/app/templates/admin_manage_article.html +++ b/app/templates/admin_manage_article.html @@ -7,6 +7,11 @@ content="width=device-width, initial-scale=1.0, minimum-scale=0.5, maximum-scale=3.0, user-scalable=yes" /> +
@@ -66,9 +71,10 @@{{ today_article['question'] }}