在呈现tamplete之前,我希望将数据填充到list字段。这就是我到目前为止所拥有的。
class SizeVariationForm(Form):
name = TextField("name")
sku = TextField("SKU Number")
class AddVariationForm(NewListingForm):
item_list = FieldList(FormField(SizeVariationForm))
add_field = SubmitField('Add Variations')
@app.route('/index', methods=['GET', 'POST'])
def add_inputs():
form = AddVariationForm(request.form)
if form.add_field.data:
# what i want is to poluate sku data here
new_variation = form.item_list.append_entry()
return render_template('index')当前的结果是
<input id="item_list-0-variation" value="">期望的结果是
<input id="item_list-0-variation" value="Some Value here">发布于 2016-12-08 11:48:33
你会得到预期的产出,但我不确定这是你想要的。
class SizeVariationForm(Form):
name = TextField("Name")
sku = TextField("SKU")
class TestForm(Form):
item_list = FieldList(FormField(SizeVariationForm))
add_field = SubmitField("Add Variations")
@app.route('/index', methods=['GET', 'POST'])
def add_inputs():
f = SizeVariationForm()
form = AddVariationForm()
if request.method == 'POST':
f.name.data = "Same value"
f.sku.data = "sku data"
form.item_list.append_entry(f)
return render_template('index.html', form=form)
#index.html
<form method="POST", action="/">
{{form.item_list}}
{{form.add_field.label}}{{form.add_field}}
</form>发布于 2016-12-08 14:39:41
基类Field接受default参数。
默认值-如果未提供表单或对象输入,则为该字段指定的默认值。可能是个可呼叫的。
将此参数提供给字段的init方法。即
class MyForm(Form):
foo = SomeField("Bar", default="Example")http://wtforms.simplecodes.com/docs/0.6.1/fields.html
https://stackoverflow.com/questions/41037257
复制相似问题