Django имеет отличное URLConf и обратное сопоставление URL-адресов. Я ищу отзыв/трюк, чтобы добавить произвольные расширения к URL-адресам, созданным Django. Иногда приятно видеть расширения, которые предлагают ваш бренд.Добавление произвольных расширений к URL-адресам, сгенерированным Django
ответ
ОК, допустим, я хочу опубликовать некоторые документы, которые доступны в форматах HTML, PDF, DOC и т. Д. Узор в привязок будет выглядеть следующим образом:
(r"^/docs/(?P<doc_slug>[\w-]+).(?P<ext>\w+)$", myapp.views.view_doc),
и вид:
def view_doc(request, doc_slug, ext):
if ext == "html":
#...
elif ext == "pdf":
#...
else:
return Http404("Document not available in this format")
+1 Спасибо, но не совсем. Но вы дали мне представление, как это сделать. – Viet
imho better way: '(r" ^/docs/(? P
@cetver вы делитесь знаниями о возможных расширениях между urlconf и реализацией представления. ОК, когда форматы не будут меняться часто, но я бы сам этого не делал –
Не могли бы вы привести несколько примеров? –
Не совсем понятно, что вы здесь задаете. Какие «расширения»? –
Скажите, добавив .html или .xyz к вашему URL. Пример: http://site.com/view/this-is-slug.html – Viet