IscanderChe30 квітня 2024 р. 04:22
Во Flask рендер шаблона не передаётся в браузер
Доброе утро!
Имеется вот такой шаблон:
<!doctype html> <html> <head> <title>{{ title }}</title> <link rel="stylesheet" href="{{ url_for('static', filename='css/bootstrap-5.3.2/css/bootstrap.min.css') }}"> <script src="{{ url_for('static', filename='css/bootstrap-5.3.2/js/bootstrap.bundle.min.js') }}"></script> <script src="{{ url_for('static', filename='js/script.js') }}"></script> </head> <body> <p>Tag: {{ tag }}, Button: {{ button }}</p> <form id="tag_form" method="POST"> <label for="text">Tag</label> <input id="text" name="text" size="20" type="text" value=""> <button id="btn" type="button" class="btn btn-outline-secondary btn-sm" data-bs-toggle="button">Personal</button> <input id="submit" name="submit" type="submit" value="Add tag"> </form> </body> </html>
JS-скрипт прикрепляет к POST-запросу дополнительные данные:
document.addEventListener('DOMContentLoaded', (event) => { form = document.getElementById('tag_form'); function readButton(event) { event.preventDefault(); const formSent = new FormData(form); const xhr = new XMLHttpRequest(); const button = document.getElementById('btn').getAttribute('aria-pressed') formSent.append('button', button); xhr.open('POST', 'http://127.0.0.1:5000'); xhr.send(formSent); return false; } form.addEventListener('submit', readButton); });
Python-обработчик эти данные корректно принимает:
from flask import Flask from flask import render_template, request app = Flask(__name__) @app.route('/', methods=['GET', 'POST']) def print_form_data(): if request.method == 'POST': tag = request.form.get('text') button = request.form.get('button') return render_template('index.html', title='Add tag', tag=tag, button=button) # эта строка шаблон с полученными данными не выводит return render_template('index.html', title='Add tag') # эта строка выводит шаблон
В консоли браузера ответ получается корректно, а на самой страничке ничего не показывается. Почему?
Рекомендуємо хостинг TIMEWEB
Стабільний хостинг, на якому розміщується соціальна мережа EVILEG. Для проектів на Django радимо VDS хостинг.Вам це подобається? Поділіться в соціальних мережах!
- Дмитрий
- 07 травня 2024 р. 09:40
C++ - Тест 004. Указатели, Массивы и Циклы
- Результат:60бали,
- Рейтинг балів-1
d
- dsfs
- 26 квітня 2024 р. 04:56
C++ - Тест 004. Указатели, Массивы и Циклы
- Результат:80бали,
- Рейтинг балів4
Останні коментарі
Qt Linux - Урок 001. Автозапуск програми Qt під Linux как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
АК
Qt WinAPI - Урок 007. Робота з ICMP Ping в Qt Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
Анатолий Кононенко05 лютого 2024 р. 01:50
EVA25 грудня 2023 р. 10:30
Boost - статичне зв'язування в проекті CMake під Windows Сделал всё по-как у вас, но выдаёт ошибку [build] LINK : fatal error LNK1104: не удается открыть файл "libboost_locale-vc142-mt-gd-x64-1_74.lib" Хоть убей, не могу понять в чём дел…
Qt/C++ - Урок 056. Підключення бібліотеки Boost в Qt для компіляторів MinGW і MSVC Для решения твой проблемы добавь в файл .pro строчку "LIBS += -lws2_32" она решит проблему , лично мне помогло.
Тепер обговоріть на форумі
добавить qlineseries в функции в функции: "GPlotter::addSeries(QString title, QVector &arr)" я вызываю метод setChart(...), я в конструктор передал адрес на QChartView элемент
BlinCT05 травня 2024 р. 05:46
Best Indian Food Restaurant In Cincinnati OH Ready to embark on a gastronomic journey like no other? Join us at App india restaurant and discover why we're renowned as the Best Indian Food Restaurant In Cincinnati OH . Whether y…
Evgenii Legotckoi02 травня 2024 р. 14:07
IscanderChe30 квітня 2024 р. 04:22