Skip to main content
 首页 » 编程设计

python之TemplateDoesNotExist 但它存在

2025年05月04日14zhenyulu

Python 2.7 和 Django 1.10 我的模板存在,但我做错了!

TemplateDoesNotExist at /basicview/2/ 
<!DOCTYPE html> 
<html> 
<head> 
    <meta charset="UTF-8"> 
    <title>TEST</title> 
</head> 
<body> 
This is template_two view! 
</body> 
</html> 
 
Request Method:     GET 
Request URL:    http://127.0.0.1:8000/basicview/2/ 
Django Version:     1.10.1 
Exception Type:     TemplateDoesNotExist 
Exception Value:     
 
<!DOCTYPE html> 
<html> 
<head> 
    <meta charset="UTF-8"> 
    <title>TEST</title> 
</head> 
<body> 
This is template_two view! 
</body> 
</html> 
 
Exception Location:     /home/i/djangoenv/local/lib/python2.7/site-packages/Django-1.10.1-py2.7.egg/django/template/loader.py in get_template, line 25 
Python Executable:  /home/i/djangoenv/bin/python 
Python Version:     2.7.11 
Python Path:     
 
['/home/i/djangoenv/bin/firstapp', 
 '/home/i/djangoenv/lib/python2.7', 
 '/home/i/djangoenv/lib/python2.7/plat-i386-linux-gnu', 
 '/home/i/djangoenv/lib/python2.7/lib-tk', 
 '/home/i/djangoenv/lib/python2.7/lib-old', 
 '/home/i/djangoenv/lib/python2.7/lib-dynload', 
 '/usr/lib/python2.7', 
 '/usr/lib/python2.7/plat-i386-linux-gnu', 
 '/usr/lib/python2.7/lib-tk', 
 '/home/i/djangoenv/local/lib/python2.7/site-packages', 
 '/home/i/djangoenv/local/lib/python2.7/site-packages/Django-1.10.1-py2.7.egg', 
 '/home/i/djangoenv/lib/python2.7/site-packages', 
 '/home/i/djangoenv/lib/python2.7/site-packages/Django-1.10.1-py2.7.egg'] 
 
Server time:    Пт, 23 Сен 2016 15:43:30 +0000 

settings.py(os.path.join(BASE_DIR)、'templates' 或/home/mainapp/templates)不工作..

TEMPLATES = [ 
    { 
        'BACKEND': 'django.template.backends.django.DjangoTemplates', 
        'DIRS': ['templates'], 
        'APP_DIRS': True, 
        'OPTIONS': { 
            'context_processors': [ 
                'django.template.context_processors.debug', 
                'django.template.context_processors.request', 
                'django.contrib.auth.context_processors.auth', 
                'django.contrib.messages.context_processors.messages', 
            ], 
        }, 
    }, 
] 

article/views.py 我的 def 看起来像:

def template_two(request): 
    view = "template_two" 
    t = get_template('myview.html') 
    html = t.render(Context({'name': view})) 
    return render(request, html, {}) 

我的文件:

mainapp/mainapp/settings.py 
mainapp/mainapp/article/views.py 
mainapp/templates/myview.html 

请您参考如下方法:

我建议您将模板放入您的应用中。

您的文件将在此处:

mainapp/mainapp/templates/myview.html 

请确保将 mainapp 添加到您的 INSTALLED_APPS 中,如下所示:

INSTALLED_APPS = [ 
   ... 
   'mainapp', 
]