我知道有很多类似的问题,但还没有人解决我的问题。
Python版本:3.4 Django版本:1.8
加载http://127.0.0.1:8000/lfstd/时,我在/lfstd/处获得模板doesnotexist。
系统.py:
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
TEMPLATE_PATH = os.path.join(BASE_DIR, 'templates')
TEMPLATE_DIRS = (
TEMPLATE_PATH,
)
lfstd/视图.py:
def index(request):
[...]
return render(request, 'lfstd/index.html', context_dict)
项目url.py:
from django.conf.urls import include, url
from django.contrib import admin
url(r'^admin/', include(admin.site.urls)),
url(r'^lfstd/', include('lfstd.urls')),
lfstd url.py:
from django.conf.urls import patterns, url
from lfstd import views
urlpatterns = patterns('',
url(r'^$', views.index, name='index'))
在基本目录和模板路径上运行打印,我得到:
Base dir: C:\Users\Phil\PycharmProjects\TownBuddies
Template path: C:\Users\Phil\PycharmProjects\TownBuddies\templates
这正是我的项目和模板文件夹所在的位置。但是,django不会在该文件夹中查找模板。它位于以下文件夹中:
C:\Python34\lib\site-packages\django\contrib\admin\templates\lfstd\index.html (File does not exist)
C:\Python34\lib\site-packages\django\contrib\auth\templates\lfstd\index.html (File does not exist)
事实上,如果我把我的模板移到那里,它确实会找到它,并且它会工作。
任何帮助都是非常感谢的,我开始与Django和完全卡住。。。
编辑:
我将TEMPLATE DIRS更改为TEMPLATES但Django仍然没有在TEMPLATES文件夹中查找:
我正在用pytest-django做一些单元测试,突然我被重复了一遍,完全出乎意料地出现了**TemplateDoesNotExist**错误。
我在试图弄清楚发生了什么时发现了这个stackoverflow问题。
我最终通过删除所有的
__pycache__
目录解决了这个问题。从那以后我明白了,当事情突然变得莫名其妙地不稳定时,在通过尝试修复来打破事物之前,先清除掉__pycache__
!我使用此脚本递归清除具有以下内容的模块所在的所有
__pycache__
目录:django 1.8中不赞成使用} 代替:
TEMPLATE_DIRS
设置。您应该使用^{相关问题 更多 >
编程相关推荐