首页 > 解决方案 > Django 渲染有一个意外的关键字参数“context_instance”

问题描述

我正在使用 Python 3.6,我想使用 Django 框架在 PyCharm 中运行一个项目,但是我收到了这个错误:

TypeError at /
render() got an unexpected keyword argument 'context_instance'
Request Method: GET
Request URL:    http://127.0.0.1:8000/
Django Version: 2.1.7
Exception Type: TypeError
Exception Value:    
render() got an unexpected keyword argument 'context_instance'
Exception Location: C:\Users\hp\AppData\Local\Programs\Python\Python36\dj\xaon\app\views.py in home, line 16
Python Executable:  C:\Users\hp\AppData\Local\Programs\Python\Python36\dj\f\Scripts\python.exe
Python Version: 3.6.5
Python Path:    
['C:\\Users\\hp\\AppData\\Local\\Programs\\Python\\Python36\\dj\\xaon',
 'C:\\Users\\hp\\AppData\\Local\\Programs\\Python\\Python36\\dj\\f\\Scripts\\python36.zip',
 'C:\\Users\\hp\\AppData\\Local\\Programs\\Python\\Python36\\dj\\f\\DLLs',
 'C:\\Users\\hp\\AppData\\Local\\Programs\\Python\\Python36\\dj\\f\\lib',
 'C:\\Users\\hp\\AppData\\Local\\Programs\\Python\\Python36\\dj\\f\\Scripts',
 'c:\\users\\hp\\appdata\\local\\programs\\python\\python36\\Lib',
 'c:\\users\\hp\\appdata\\local\\programs\\python\\python36\\DLLs',
 'C:\\Users\\hp\\AppData\\Local\\Programs\\Python\\Python36\\dj\\f',
 'C:\\Users\\hp\\AppData\\Local\\Programs\\Python\\Python36\\dj\\f\\lib\\site-packages']
Server time:    Thu, 28 Mar 2019 22:20:33 +0000 

我的view.py样子是这样的:

def home(request): 
    assert isinstance(request, HttpRequest)
    return render(
        request, 
        'app/index.html', 
        context_instance=RequestContext(request, { 'title':'Home Page', })
        ) 

标签: pythondjangopycharm

解决方案


您使用的是 Django 2.1.7,但context_instance位置参数自 1.8 版以来已被弃用,并在 Django 2.0 中被删除。您应该调用快捷方式函数时简单地使用。contextrender()

有关更多信息,context_instance请参阅其他 Stack Overflow 帖子


推荐阅读