Я знаю, что это решено для 1.5, но приложение, в котором я работаю, - 1.4.
У меня была проблема с двумя шаблонами URL-адресов подряд, используя ответ sacabuche:
url(r'^playlist1\.m3u$', ContentTypeTemplateView.as_view(template_name='playlist1.m3u', content_type='audio/x-mpegurl')),
url(r'^playlist2\.pls$', ContentTypeTemplateView.as_view(template_name='playlist2.pls', content_type='audio/x-scpls'))
Я обнаружил, что playlist1 вернет правильный шаблон, но с типом контента playlist2!Playlist2 был в порядке.Добавление шаблона 3-го URL-адреса с типом содержимого «foo» приведет к тому, что все представления списка воспроизведения будут возвращены с типом содержимого «foo».
В итоге вместо этого я использовал метод рендеринга с хорошими результатами:
URL:
url(r'^playlist1\.m3u$', 'content_type_to_template', {'template_name': 'playlist1.m3u', 'content_type': 'audio/x-mpegurl'}),
url(r'^playlist2\.pls$', 'content_type_to_template', {'template_name': 'playlist2.pls', 'content_type':'audio/x-scpls'})
просмотров:
from django.shortcuts import render
def content_type_to_template(request, template_name='', content_type='text/plain'):
return render(request, template_name, content_type=content_type)