TemplateDoesNotExist位于/join/home.html(Django)
我已经看过了这里的其他答案,但由于这是我的第一个项目,我无法掌握如何解决这个问题。我可以得到127.0.0.1:8000/管理员,显示得很好 我得到了这个错误:TemplateDoesNotExist位于/join/home.html(Django),django,python-2.7,django-templates,django-settings,Django,Python 2.7,Django Templates,Django Settings,我已经看过了这里的其他答案,但由于这是我的第一个项目,我无法掌握如何解决这个问题。我可以得到127.0.0.1:8000/管理员,显示得很好 我得到了这个错误: TemplateDoesNotExist at /join/home.html. Request Method: GET Request URL: http://127.0.0.1:8000/ Django Version: 1.5.1 Exception Type: TemplateDoesNotExist Exception
TemplateDoesNotExist at /join/home.html.
Request Method: GET
Request URL: http://127.0.0.1:8000/
Django Version: 1.5.1
Exception Type: TemplateDoesNotExist
Exception Value: /join/home.html.
home.html
位于/Users/user/Desktop/mvp\u landing/static/templates/join
在我的views.py
中,我有以下内容:
from django.shortcuts import render_to_response, RequestContext
from .models import Join
from .forms import JoinForm
def home(request):
form = JoinForm(request.POST or None)
if form.is_valid():
new_join = form.save(commit=False)
new_join.save()
return render_to_response('/join/home.html.', locals(), context_instance=RequestContext(request))
因此,对于TEMPLATE\u DIRS
的settings.py中的内容,我应该没有问题,对吧
TEMPLATE_DIRS = (
os.path.join(os.path.dirname(os.path.dirname(__file__)), "static", "templates"),
)
以下是整个设置.py
(已删除数据库信息等):
而url.py
是这样的:
from django.conf.urls import patterns, include, url
from django.conf import settings
# Uncomment the next two lines to enable the admin:
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
(r'static/(?P<path>.*)$', 'django.views.static.serve', {'document_root': settings.STATIC_ROOT}),
(r'media/(?P<path>.*)$', 'django.views.static.serve', {'document_root': settings.MEDIA_ROOT}),
url(r'^$', 'join.views.home', name='home'),
# Uncomment the admin/doc line below to enable admin documentation:
url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
# Uncomment the next line to enable the admin:
url(r'^admin/', include(admin.site.urls)),
)
从django.conf.url导入模式,包括,url
从django.conf导入设置
#取消注释下两行以启用管理员:
从django.contrib导入管理
admin.autodiscover()
urlpatterns=模式(“”,
(r'static/(?P.*)','django.views.static.service',{'document_root':settings.static_root}),
(r'media/(?P.*)','django.views.static.service',{'document_root':settings.media_root}),
url(r'^$'、'join.views.home',name='home'),
#取消注释下面的admin/doc行以启用管理员文档:
url(r“^admin/doc/”,包括('django.contrib.admindocs.url'),
#取消注释下一行以启用管理员:
url(r“^admin/”,包括(admin.site.url)),
)
非常感谢您的帮助。删除视图模板字符串中的第一个斜杠。删除视图模板字符串中的第一个斜杠。您应该在此处修复路径:
return render_to_response('join/home.html', locals(), context_instance=RequestContext(request))
请注意,我是如何删除开头的/
以及后面的
希望这有帮助您应该在此处修复路径:
return render_to_response('join/home.html', locals(), context_instance=RequestContext(request))
请注意,我是如何删除开头的/
以及后面的
希望这对您有所帮助很可能是您在render\u to\u responses
调用中的额外拖尾
'/join/home.html.
应该是'/join/home.html'
谢谢你的快速回复,彼得。我刚刚删除了额外的点,不幸的是我仍然得到错误。不过这是个好主意。我还在学习复杂的语法。@ChrisK这将是第一个/谢谢你,这是罪魁祸首。现在,如果我真的知道这就是我要找的,我会为自己节省3个小时……很可能是你在render\u responses
通话中的额外拖尾'/join/home.html.
应该是'/join/home.html'
谢谢你的快速回复,彼得。我刚刚删除了额外的点,不幸的是我仍然得到错误。不过这是个好主意。我还在学习复杂的语法。@ChrisK这将是第一个/谢谢你,这是罪魁祸首。现在,如果我真的知道这就是我想要的,我会为自己节省3个小时…谢谢,这就是问题所在。就像我上面提到的,我甚至对语法都不太了解,所以我甚至不确定要查找什么。您可以在/join/home.html上阅读TemplateDoesNotExist。
因此,您可能会认为您提供的模板路径有问题,通常,在Unix类系统中,一开始的/
是根目录,因此系统可能试图在根目录下查找模板,这是不存在的:)谢谢,这就是问题所在。就像我上面提到的,我甚至对语法都不太了解,所以我甚至不确定要查找什么。您可以在/join/home.html上阅读TemplateDoesNotExist。
因此,您可能会认为您提供的模板路径有问题,通常,在类Unix系统中,一开始的/
是根目录,因此系统可能试图在根目录/join/
中查找模板,而根目录不存在:)