Переменное количество полей в Django URL - PullRequest
4 голосов
/ 04 декабря 2010

Я бы хотел URL-адрес в форме:

... field1/eq/value1/field2/gt/value2/ ...

Где я хочу фильтровать содержимое страницы в функции просмотра на основе произвольного числа полей (имена которых не являютсязаранее известно).

Я пробовал:

(r'^((?P<field>\w+)/(?P<op>[a-z]+)/(?P<value>\w+)/)*$', my_view)

Но аргументы ключевого слова заполняются последним набором из трех полей / op / value, встречающихся в URL.

Есть ли какой-нибудь способ, которым я мог бы заполнить список или словарь на основе переменного числа полей URl, как это?

Или я должен сделать это каким-то совершенно другим способом?

1 Ответ

6 голосов
/ 04 декабря 2010

Не делай этого.

Используйте строку запроса. ?field,eq,value&field,gt,value будет работать намного лучше.

...