2017-05-18 47 views
0

我有一個下拉菜單發送從Django的下拉多個值

<form action="/dir/" method="POST">{% csrf_token %} 
    <table> 
     <tr><td> 
     <select name="listxblocks"> 
      {% for scname, desc in scenarios %} 
      <!--<option value="{% url "workbench_show_scenario" scname %}">{{desc}}/{{scname}}</option>--> 
      <option value="{{scname}}">{{desc}}/{{scname}}</option> 

      {% endfor %} 

     </select> 

     </td> 
    <td></td></tr> 
    </table> 
    <input type="submit" value="Save"/> 
</form> 

我目前正在傳遞一個值的Django的形式scname提交表單的時候,我需要通過兩個值scname遞減和訪問他們後來

我怎麼能發送這兩個值

回答

1

當我需要解壓兩個值裏面我寫的都是具有已知分離器:

<option name value="{{desc}}#{{scname}}">{{desc}}/{{scname}}</option> 

然後在您的觀點:

foo = request.POST.get('listxblocks').split('#') 
desc = foo[0] 
scname = foo[1] 
+0

感謝您的回答,現在完美工作 – ChemseddineZ

+1

如果您在'desc'或'scname'中有'#',那麼您將得到不正確的值。 –

1

希望它會工作。您可以從option傳遞JSON串並轉換json stringjson object Django的視圖中

<option value="{'desc': {{desc}}, 'scname': {{scname}} }">{{desc}}/{{scname}}</option> 

,然後你的Django視圖功能

import json 
blocks = json.loads(request.POST.get('listxblocks')) 
desc = blocks['desc'] 
scname = blocks['scname'] 
相關問題