在HTML按钮上调用django函数
我想在我的继续按钮上调用django函数,并将所选值传递给该函数,我该如何做 以下是表格:在HTML按钮上调用django函数,django,django-forms,Django,Django Forms,我想在我的继续按钮上调用django函数,并将所选值传递给该函数,我该如何做 以下是表格: <select id="the-id"> {% for i in z %} <option value="{{ i }}">{{ i }}</option> {% endfor %} <form method="post" novalidate> {% csrf_toke
<select id="the-id">
{% for i in z %}
<option value="{{ i }}">{{ i }}</option>
{% endfor %}
<form method="post" novalidate>
{% csrf_token %}
<a class="btn btn-outline-secondary" role="button">Proceed</a>
<a href="{% url 'employee:products_table' %}" class="btn btn-outline-
secondary" role="button">Nevermind</a>
</form>
</select>
url.py
path('warehouse-details/', warehouse_details, name='warehouse_details'),
首先,修复HTML。select需要位于表单内部,并具有
名称
属性;这个按钮需要是一个实际的按钮,而不是一个看起来像按钮的链接
{%csrf_令牌%}
{z%中的i的%s}
{{i}
{%endfor%}
继续
现在,您可以使用以下名称在视图中获取数据:
value = request.POST['my-select']
(不过,我建议您使用Django表单;它将为您输出select并验证响应。)
编辑如果您想提交到与最初显示表单的URL不同的URL,则需要将其作为表单操作:
<form method="post" action="{% url 'warehouse_details' %}" novalidate>
假设您的URL模式名为“warehouse\u details”。我尝试过,继续按钮只是刷新页面,它不会将我重定向到下一个函数。感谢您节省时间!,我能把表格中的其他东西也传递给那个函数吗?。。我想在表单中添加一个日期字段,并将其传递给函数tooSure,您可以在表单中放入任意数量的字段。只要记住给他们所有的
name
属性,并使用该名称来访问POST dict中的数据。但我再次建议您查看哪些属性负责构建HTML和验证提交。
<form method="post" action="{% url 'warehouse_details' %}" novalidate>