HTML代码:
{% for data in top_100_active_webshells_tuple %}
<tr>
<td>{{ data.0 }}</td>
<td>{{ data.1 }}</td>
<td>{{ data.2 }}</td>
<td><form action="/my_image/" method="POST">
{% csrf_token %}
<input id ="my_input" type="submit" class="btn" name="{{ data.3 }}" value="image" style="background:white;color:black;border:3px solid grey"/>
</form>
</td>
</tr>
{% endfor %}
views.py函数:
def my_image(request):
if "data.3" in request.GET:
address=request.GET["data.3"]
resp="address is "+address
return HttpResponse(resp)
else:
return HttpResponse("error here")
的问题:
问题是我无法将值存储在名为
的函数中的变量“data.3”中
def my_image(request)
当我单击输入按钮,如何修复它并在 views.py 中获取变量值时,会打印其他语句
请尽快回复。
答案 0 :(得分:0)
您将在请求数据中获取data.3
而不是data.3
的值作为密钥。
此外,您将收到request.POST
而不是request.GET
的数据,因为表单方法为POST
。
def my_image(request):
if <value_of_data.3> in request.POST:
address=request.POST[<value_of_data.3>]
resp="address is "+address
return HttpResponse(resp)
else:
return HttpResponse("error here")
但是,当您进行迭代并且data.3
的值可能会在不同的请求中发生更改时,您将无法使用上述逻辑按预期使视图正常工作。