繁体   English   中英

request.POST在Django中不返回多个字段值

[英]request.POST does not return multiple fields values in Django

我开始使用Django创建一个简单的Web应用程序。

我正在使用multiselect进行下拉,可以进行多项选择。

我尝试了这里找到的几乎所有解决方案,但似乎没有一个适合我。

我正在使用python 3.5

HTML:

<form action="datareturn.html" method="post">
    {% csrf_token %}
    <select id="probs_location" multiple="multiple" name="probs_locations[]">
                {% for probs_location in probs_locations %}
              <option value="{{ probs_location }}">{{ probs_location }}</option>
              {% endfor %}
    </select>
    ...........#Other input fields

</form>

<script>
$('#probs_location').multiselect({
  enableClickableOptGroups: true
});
</script>

PYTHON-DJANGO:

def datareturn(request):
    if request.method=='POST':
        print(request.POST)
        print(request.POST.getlist('probs_locations[]'))
    return HttpResponse("Success")
  • request.POST返回所有其他字段,但多个选择字段除外。

  • request.POST.getlist('probs_locations[]')返回一个空列表。

您在select标记中有一个错误,您可以像下面这样简单地传递多个参数:

<select id="probs_location" name="probs_locations[]" multiple>

这可能就是为什么它未被识别的原因。 除了probs_locations[]看起来很糟糕之外, probs_locations_list也会好很多。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM