代码之家  ›  专栏  ›  技术社区  ›  AleMal

Django:Internet explorer下载页面内容而不是呈现页面内容

  •  1
  • AleMal  · 技术社区  · 7 年前

    我正在使用Django Web Framework创建一个网站。 当我使用chrome、safari、firefox等浏览器查看时,它可以正常工作,但如果我在Internet Explorer中打开页面,就会发生这种情况:

    enter image description here

    在我看来。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
    

    响应变量包含页面的HTML结构,其他浏览器呈现它,但IE没有,为什么?

    提前感谢

    1 回复  |  直到 5 年前
        1
  •  2
  •   solarissmoke    7 年前

    您正在将无效参数传递给 render() . 从 docs ,它采用以下参数:

    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)