Ale*_*lin 3 python flask wtforms flask-wtforms
我正在使用无线电场,我希望将默认值渲染为(.)而不是().我尝试了直截了当的方法:
choice_switcher = RadioField('Choice?', [validators.Required()], choices=[('choice1', 'Choice One'),('choice2', 'Choice Two')], default='choice1')
Run Code Online (Sandbox Code Playgroud)
它没用.它提供两种选择:
( ) Choice One
( ) Choice Two
Run Code Online (Sandbox Code Playgroud)
虽然我想看到这个:
(.) Choice one
( ) Choice Two
Run Code Online (Sandbox Code Playgroud)
对我来说工作正常:
from flask import Flask, render_template
from flask_wtf import Form
from wtforms import validators, RadioField
app = Flask(__name__)
app.secret_key = 'TEST'
class TestForm(Form):
choice_switcher = RadioField(
'Choice?',
[validators.Required()],
choices=[('choice1', 'Choice One'), ('choice2', 'Choice Two')], default='choice1'
)
@app.route('/')
def hello_world():
testform = TestForm()
return render_template('test_form.html', form=testform)
if __name__ == '__main__':
app.run(debug=True)
Run Code Online (Sandbox Code Playgroud)
{{ form.choice_switcher() }}
Run Code Online (Sandbox Code Playgroud)
<ul id="choice_switcher">
<li><input checked id="choice_switcher-0" name="choice_switcher" type="radio" value="choice1"> <label
for="choice_switcher-0">Choice One</label></li>
<li><input id="choice_switcher-1" name="choice_switcher" type="radio" value="choice2"> <label
for="choice_switcher-1">Choice Two</label></li>
</ul>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6998 次 |
| 最近记录: |