У меня есть форма в Джанго, который выглядит примерно так (после того, как оно было вынесено):Джанго: использовать чистые URL-адреса с HTTP GET
<form action="/app/detail/" method="get">
<p><label for="id_detail">Choose which items to view:</label>
<select multiple="multiple" id="id_items" name="items">
<option value="23">Item 23</option>
<option value="18">Item 18</option>
<option value="22">Item 22</option>
</select></p>
<input type="submit" value="View" />
</form>
ассоциированная URL-адрес конф (в app
) включает в себя эту картину:
url(r'^detail/$', views.detail, name='detail')
URL-адрес для доступа детализированный вид заканчивает тем, что-то вроде этого (в зависимости, какой из вариантов были выбраны в поле мульт-выбор:
http://hostname/app/detail/?items=23&items=18&items=22
В views.py
, я могу использовать request.GET.getlist('items')
, чтобы получить выбранные предметы. Есть ли способ сделать все это, чтобы URL-адрес стал более чистым без ?param=value&
в URL-адресе? Django's URL dispatcher documentation обсуждает чистые URL-адреса, но эти примеры в основном представляют собой URL-адреса, которые являются иерархическими по своей природе.