python - 在 Django 表单发布请求中访问单选/复选框按钮选择

标签 python django checkbox webforms radio-button

我在 django 中有一个网页表单。我的网页上有一些单选按钮。用户选择单选按钮并提交后,我需要知道在我的 View 中选择了哪个单选按钮。 我尝试使用以下代码: HTML 模板:

<form action= "{% url 'rec:opt' %}" method="post">
    {% csrf_token %}
    {%  for name in features %}
    <tr>
        <td>{{ name }}</td>
        <td>

            <input type="checkbox" name="is_obj" id={{ name }} + "_is_obj" > <br>
        </td>
        <td>
            Lower Limit <input type="text" name="ll" id={{ name }} + "_ll">
            Upper Limit <input type="text" name="ul" id={{ name }} + "_ul">
        </td>
    </tr>
    {% endfor %}
    <input type="submit" value="Submit" />
</form>

查看.py

def opt(request):
    print(request.POST['is_obj']) #'on'

request.POST 仅返回“on”,并且不说明选择了哪个单选/复选框。 getlist 也返回以下内容

request.POST.getlist['is_obj'] # ['on']

最佳答案

您需要将 value 属性添加到您的复选框:

<input type="checkbox" name="is_obj" id={{ name }} + "_is_obj" value="{{ name|add:'_is_obj' }}">

如果省略 value 属性,则复选框的默认值为 on

请注意,您可以使用 add用于字符串连接的过滤器。但要小心,可以强制转换为整数的字符串将被求和,而不是连接。

关于python - 在 Django 表单发布请求中访问单选/复选框按钮选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51238341/

相关文章:

python - Pandas -Python : How do you write new lines in Pandas?

python - Django 多对多字段 - 可以处理大型数据集吗?

python - 如何在 Django 中添加带有通用外键的 unique_together

javascript - ExtJS 4 状态提供者

python - 如何列出类函数内的变量或属性?

python - Python 正则表达式中的反斜杠

grails - Grails复选框处理

c# - 将事件处理程序添加到动态创建的复选框(aspx、c#)

python - 解码并打印转义字符

python - 如何获取外键 django 引用的特定 id 的数据?