从Django的Dropdown菜单中检索多个值

时间:2017-04-14 02:14:08

标签: django

我的模板中有一个很好的渲染表格,下拉菜单和保存按钮,当我从下拉菜单中选择一个项目并单击保存时,我将该项目的URL传递给views.py,如下所示:

<select name="listxblocks">
  {% for scname, desc in scenarios %}
    <option value="{% url "workbench_show_scenario" scname %}">{{desc}}/{{scname}}</option>
  {% endfor %}
</select>

现在,在views.py文件中,我可以检索所选项目及其值,

if request.method == "POST": #checks if the request is a POST operation
    url = request.POST['listxblocks'] 

但我还要检索名称 scname 和描述 desc

我尝试使用隐藏字段,但它使我的模板变得混乱,我该怎么做? 谢谢!

1 个答案:

答案 0 :(得分:0)

有两种方法可以从您的选择中检索所有信息。

1)从select中获取 所有 数据。    在视图中使用以下代码:

variable = request.POST.getlist('listxblocks')

2)添加&#34;多个&#34;选择

<select name="listxblocks" multiple="multiple">
      {% for scname, desc in scenarios %}
      <option value="{% url "workbench_show_scenario" scname %}">{{desc}}/{{scname}}</option>
      {% endfor %}
    </select>

在view.py中使用

url = request.POST['listxblocks']

您将找到包含所有选定选项的列表

希望这会有所帮助:)