Чтобы сделать мой вопрос более ясным, вот небольшое приложение, которое принимает предложение предложения и выводит это предложение дважды.Как перемещать фляжку из расширенного вида в расширенный вид и создавать формы для всех видов?
У меня есть base.html
:
<html>
<head>
<title> My site </title>
<body>
{% block content %}{% endblock %}
</body>
</html>
и index.html
:
{% extends "base.html" %}
{% block content %}
{{ s }}
<form action="" method="post" name="blah">
{{ form.hidden_tag() }}
{{ form.sentence(size=80) }}
<input type="submit" value="Doubler"></p>
</form>
{% endblock %}
Вот часть views.py
:
from forms import DoublerForm
@app.route('/index')
def index():
form = DoublerForm()
if form.validate_on_submit():
s = form.sentence.data
return render_template('index.html', form=form, s=str(s) + str(s))
return render_template('index.html', form=form, s="")
А вот forms.py
, без всех импорта:
class DoublerForm(Form):
sentence = StringField(u'Text')
Это похоже на работу ОК. Но я хотел бы иметь свою форму ввода в шаблоне base.html
, чтобы это отображалось на всех страницах, которые его расширили, а не только на странице index
. Как я могу переместить форму в base.html и создать экземпляр формы для всех представлений, расширяющих base.html?
Нет, я хотел бы форму, чтобы быть встроены в 'base.html' так, чтобы он автоматически получает показать на всех страницах, которые проходят Это. – theQman
Вы хотите, чтобы форма использовалась в индексе, или это может произойти после того, как блок контента, например, мои изменения? – AlexLordThorsen
Его не нужно использовать в индексе, но теперь откуда идет объект 'form'? В моем коде он был создан в 'index()'; Я не хочу создавать экземпляр его во всех других функциях, расширяющих 'base.html'. – theQman