2017-04-14 91 views
1

我在下拉菜单和保存按钮的模板中显示了一个表单,当我从下拉菜单中选择一个项目并单击保存时,我传递给views.py URL该项目,像这样:从Django中的下拉菜单中检索多个值

<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

我试过隐藏的领域,但它使我的模板凌乱,我该怎么做? 谢谢!

回答

0

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

1)取全部来自select的数据。 在视图中使用下面的代码:

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

2)添加 “多” 到你选择像

<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'] 

,你会发现一个列表与所有选定的选项

希望这会有所帮助:)

+0

感谢您的回答,但我认为您误解了我的问题。我不想从下拉菜单中选择多个项目(我猜标题是错误的),我正在寻找只选择一个项目,并检索有关它的多种信息,在我的模板中,我指定了url作为信息检索到,但我需要另外两个信息传递给视图 – ChemseddineZ

相关问题