Swa*_*gat 3 python forms django
我有一个情况。我有一个 django 模板 ip_form.html 给出了波纹管。
<form method = "GET">
{% for val in value_list %}
<input type='text' value = '{{ val }}'> {{ val }}</input>
{% endfor %}
</form>
Run Code Online (Sandbox Code Playgroud)
我想告诉你,我不知道 value_list 中的 val 数(可能为零)。所以可能不使用 django form.py(而且我在特定视图函数的特定时间获得了价值,即不知道它会一直发生)
让我们在 views.py 中说
def view1(request):
value_list = [1,2,3,4,5] # it will change every time view1 will get request
if request.method == "GET":
# i want to retrieve here post
return render ('ip_form.html','value_list':value_list)
Run Code Online (Sandbox Code Playgroud)
我如何使用 form.py
那我怎样才能找回它。你可以参考我post方法。(它不是敏感数据,所以get方法没问题)
谢谢。
您需要向name输入添加一个属性,然后您可以使用此名称来检索值列表,使用Django QueryDictgetlist方法:
HTML:
<form method="POST">
{% for val in value_list %}
<input type='text' value='{{ val }}' name='my_list'>{{ val }}</input>
{% endfor %}
</form>
Run Code Online (Sandbox Code Playgroud)
看法:
def view1(request):
value_list = [1,2,3,4,5] # it will change every time view1 will get request
if request.method == "POST":
values_from_user = request.POST.getlist('my_list')
return render ('ip_form.html', 'value_list': value_list)
Run Code Online (Sandbox Code Playgroud)
values_from_user将是您表单中的输入值列表(如果表单具有零个input元素,则为空列表)。
请注意,我将您的表单方法更改为POST,否则request.method您认为的测试将毫无意义。
| 归档时间: |
|
| 查看次数: |
5167 次 |
| 最近记录: |