Django: Internet Explorer загружает контент страницы, а не отображает его
Я создаю сайт с использованием Django Web Framework. Когда я смотрю его в браузерах, таких как Chrome, Safari, Firefox и т. Д., Все работает правильно, но если я открываю в проводнике, это происходит:
В моем views.py у меня есть этот код:
def index(request):
context = RequestContext(request)
c_form = False
try:
c_form = request.COOKIES['cform']
except Exception:
if request.POST: c_form = foo_email(request)
context_list = {'form': c_form}
response = render(request, 'base_home.html', context_list, context)
if c_form: response.set_cookie('cform', value='1', max_age=None)
return response
Переменная response содержит HTML-структуру страницы, другие браузеры отображают ее, но это не так, почему?
заранее спасибо
1 ответ
Решение
Вы передаете неверные аргументы render()
, Из документов он принимает следующие аргументы:
render(request, template_name, context=None, content_type=None, status=None, using=None)
Вы проходите context
к content_type
аргумент, который каким-то образом не прерывается, но заканчивается ответом, не содержащим text/html
Тип содержимого. Поэтому IE пытается загрузить его.
Удалите этот последний аргумент:
response = render(request, 'base_home.html', context_list)