Разрабатываю небольшое API. Мне требуется после нажатия кнопки считать данные из input'a
, произвести с ними некоторые действия и выввести на экран, если это возможно (Что-то вроде месседжбокса).
{% extends 'base.html' %}
{% block body %}
<body>
<input class="position_center borders" type="text" placeholder="Вставте нужную ссылку или хеш сюда">
<button type="button" class="position_center borders">Тык!</button>
</body>
{% endblock %}
Пробовал временно обойтись без кнопки, прописав инпуту следующую конструкцию:
method="GET" name="q" value="{{ request.args.get('q', '') }}"
и старался забрать переменную q
:
def some_sum():
q = request.args.get['q']
print(q)
Но, мягко говоря, все тщетно.
Абсолютно не понимаю как по кнопке выполнить определенную функцию.
UPD:
Разобрался. Если вдруг у кого возникнет подобный вопрос, то вот код и скрины.
Первый файл:
index.html
{% extends 'base.html' %}
{% block body %}
<body>
<form action="/a" method="post">
<input class="position_center borders" type="text" placeholder="Вставте нужную ссылку или хеш сюда"
name="q">
<button type="submit" class="position_center borders">Тык!</button>
</form>
</body>
{% endblock %}
Второй файл:
blueprint.py
from flask import Blueprint
from flask import render_template, request
urlToHash = Blueprint('urlToHash', __name__, template_folder='templates')
@urlToHash.route('/a', methods=['GET', 'POST'])
def urlToHash_func():
q = request.form['q']
return render_template('urlToHash/test.html', q=q)
Третий файл:
test.html
{% extends 'base.html' %}
{% block body %}
<body>
<h1>{{ q }}</h1>>
</body>
{% endblock %}
Скрины:
Вам нужна форма а не просто поле и кнопка.
<body>
<form action="/url" method="post">
<input class="position_center borders" type="text" placeholder="Вставте нужную ссылку или хеш сюда">
<button type="submit" class="position_center borders">Тык!</button>
</form>
</body>
При этом вам надо тип кнопки сделать submit
а вместо /url
указать ваш урл роутинга которая перехватывается вашей функцией some_sum
.
Ну и вашей функции some_sum
указать декоратор вашего урла.
Для моего примера должно быть так:
@app.route('/url')
def some_sum():
q = request.args.get['q']
return q
И не печатать q
а возвращать как ответ.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Всех с новым годом, есть ссылка при нажатию на которую загружаются данные это:
Не открываются менеджеры "server status, manager app, host manager"нажимаю на соответствующие кнопки и tomcat начинает загружать страницу и больше ничего не происходит:...
Есть два @Entity - Meal и Restaurant, взаимосвязанные через @OneToMany - ресторан имеет List<Meal> mealListВот сущности (геттеры и сеттеры намеренно не указал, но в коде...