Я использую Flask и MySQL. У меня проблема с обновленными данными , а не , отображаемыми после выполнения.
В настоящее время я удаляю и перенаправляю обратно на страницу администратора, чтобы затем иметь обновленную версию веб-сайта. Тем не менее, я все еще получаю старые записи, которые отображаются в таблице, которую я имею в начале. После обновления вручную все работает нормально. Иногда проблема также возникает с данными, которые вообще не отправляются во внешний интерфейс в результате того, что шаблон обрабатывается быстрее, чем выполнение MySQL, и пустой список отправляется вперед, я полагаю.
На Python у меня есть:
@app.route("/admin")
def admin_main():
query = "SELECT * FROM categories"
conn.executing = True
results = conn.exec_query(query)
return render_template("src/admin.html", categories = results)
@app.route('/delete_category', methods = ['POST'])
def delete_category():
id = request.form['category_id']
query = "DELETE FROM categories WHERE cid = '{}'".format(id)
conn.delete_query(query)
return redirect("admin", code=302)
admin_main - главная страница. Я попытался добавить какую-то семафорную систему, выполнение только после того, как «conn.executing» станет ложным, но это тоже не сработало. Я также попытался поиграться с asyn c и подождать, но не повезло («Функция просмотра не вернула правильный ответ»).
У меня как-то нет выбора в этом случае, и я не знаю, как решить проблему. Любая помощь приветствуется!