0
コードはわかりやすく、後で使用するために変数FlaskForm
に渡したいと思います。FlaskForm(WTForms)内の変数に渡して使用する
from flask import Flask, render_template_string
from flask_wtf import FlaskForm
from wtforms import StringField
from flask_wtf.csrf import CSRFProtect
app = Flask(__name__)
spam = 'bar'
app.secret_key = 'secret'
csrf = CSRFProtect(app)
@app.route('/')
def index():
eggs = spam
form = FooForm(eggs)
return render_template_string(
'''
{{ form.bar_field.label }} {{ form.bar_field }}
''',form = form)
class FooForm(FlaskForm):
def __init__(self, bar):
super(FooForm, self).__init__()
self.bar = bar
bar_field = StringField("Label's last word is 'bar': {0}".format(self.bar))
if __name__ == '__main__':
app.run(debug=True)
は私の代わりに希望私は達成するにはどうすればよい
line 22, in FooForm
bar_field = StringField("Label's last word is 'bar': {0}".format(self.bar))
NameError: name 'self' is not defined
あるものを手に入れますか?
これは私が達成したいものではありません。私はFlaskFormのbar_fieldを望んでいない、私は私のFooFormのbar_fieldをしたい。 – user8491711
あなた自身であなたの提案を試みたことがありますか? 'jinja2.exceptions.UndefinedError: '__main __。FooFormオブジェクト'には属性 'bar_field'がありません ' – user8491711
'次に' self.bar_field = StringField .... 'を入れます。 –