Я конвертирую небольшое PHP-приложение в Django.
В одном разделе есть длинная строка запроса, указывающая, как должен отображаться виджет. Есть несколько обязательных параметров и несколько необязательных.
Текущие URL читаются как:
app.php?id=102030&size=large&auto=0&bw=1&extra=1
Идентификатор и размер обязательны, но auto, bw и extra не обязательны. Я использую значения по умолчанию, если они не указаны.
Моей первой идеей было создать шаблон URL django с необходимой информацией, идентификатором и размером:
url(r'^/app/(P?<id>)\d+/(P?<size>)\w+$',app.project.views.widget,name='swidget')
Тогда необязательные параметры будут представлять собой строку запроса, например
/app/102030/large?auto=0&bw=1&extra=0
Является ли общепринятой практикой смешивать параметры GET с параметрами, определенными в URL conf в Django? Или я должен сделать это как
url(r'^/app/(P?<id>)\d+/(P?<size>)\w+/(P?<auto>)\d/(P?<bw>)\d/(P?<extra>)\d[/]?,'app.project.views.widget,name='swidget')
#so it would look like:
/app/102030/large/0/1/0/
Будем благодарны за любые предложения относительно лучших практик или вопросов, которые следует учитывать при любом стиле!