Django找不到我的模板
我已经尝试了很多方法“让”Django找到我的模板,但我无法找出错误所在。Django如何找到模板?它总是引发TemplateDoesNotExist异常 它正在设法获取“templates”文件夹中的“base.html”模板,但它没有设法获取“post”文件夹中的“list.html”和“detail.html”模板,后者也在“templates”文件夹中 意见如下:Django找不到我的模板,django,django-views,Django,Django Views,我已经尝试了很多方法“让”Django找到我的模板,但我无法找出错误所在。Django如何找到模板?它总是引发TemplateDoesNotExist异常 它正在设法获取“templates”文件夹中的“base.html”模板,但它没有设法获取“post”文件夹中的“list.html”和“detail.html”模板,后者也在“templates”文件夹中 意见如下: def post_list(request): posts = Post.published.all(); #
def post_list(request):
posts = Post.published.all(); # '.published' is a manager.
# try:
return render(request, "list.html", {"posts": posts});
# except:
# return render(request, "base.html", {"posts": posts});
def post_detail(request, year, month, day, post):
post = get_object_or_404(Post, slug=post,
status="published",
publish_year=year,
publish_month=month,
publish_day=day);
return render(request, "detail.html", {"post": post});
如果我将“templates/post/list.html”放在render函数的第二个参数中,为什么不起作用?(这也是我尝试的另一种工作方式)。您的
list.html
和post.html
模板位于post
目录中,因此在指定模板路径时必须包含这些模板。例如:
return render(request, "post/list.html", {"posts": posts});
Django会自动在
templates
目录中搜索已安装应用中的每个应用,包括博客/templates
,因此在指定模板路径时不应包含模板。您还可以修改基本设置.py文件以重定向模板部分
TEMPLATES = [
'DIRS': [os.path.join(BASE_DIR, '/templates'],