WTForms: HTML5 Widget'ı nasıl oluşturulur?
Aug 24 2020
WTForms renk giriş alanını kullanmaya çalışıyorum.
Formu böyle tanımlıyorum:
from wtforms.widgets.html5 import ColorInput
class ColoursForm(Form):
background_color = ColorInput()
Bu görüş:
@app.route("/colours/<token>/", methods=['GET', 'POST'])
def edit_colours(token):
form = ColoursForm(request.form)
if request.method == 'GET':
return render_template('colours_edit.html', form=form, token=token)
else: # Request = post
return redirect(url_for('view_scoreboard', token=token))
Jinja2 Şablonumda (colours_edit.html) şunu yapıyorum:
<p> {{ form.background_color }} Pick a color here </p>
Ancak, beklendiği gibi bir HTML Renk seçici oluşturmaz, bunun yerine işlenen HTML'de bunu görüyorum:
<wtforms.widgets.html5.ColorInput nesnesi, 0x10b836e90> Buradan bir renk seçin
Girdi neden işlenmiyor?
Yanıtlar
1 caspii Aug 25 2020 at 01:32
Çözdüm. Kodumla ilgili 2 sorun vardı:
() Burada eksikti:
<p> {{ form.background_color() }} Pick a color here </p>
Form şuna bakmalıdır:
class ColoursForm(Form):
"""Used when editing scoreboard colours"""
background_color = StringField(widget=ColorInput())
Gönderen bu Stackoverflow cevap .
Son olarak, WTForms belgelerinin bu konuda pek iyi olmadığını söylemeliyim. Bazı örnekler kesinlikle yardımcı olacaktır.
Gene Simmons, KISS Çizgi Romanlarının Potansiyel Olarak "İnsanlığı Yeniden Yaratabileceğini" Söyledi
Nicole Kidman, Michael Keaton ve Val Kilmer'in Batman Olarak Paylaştığı Bu 1 Çekici Özelliğe Bayıldı
Kevin Jonas'ın Kızı Alena, Doğum Günü Fotoğrafında Büyümüş Görünüyor: '9 Yaşında Gerçek Hissetmiyor'
Charly Reynolds Yakın Zamandaki Vokal Kord Ameliyatını Açıkladı: 'Şarkı Söylemekte Sorun Yaşıyordum'