Django找不到我的模板

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(); #

我已经尝试了很多方法“让”Django找到我的模板,但我无法找出错误所在。Django如何找到模板?它总是引发TemplateDoesNotExist异常

它正在设法获取“templates”文件夹中的“base.html”模板,但它没有设法获取“post”文件夹中的“list.html”和“detail.html”模板,后者也在“templates”文件夹中

意见如下:

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'],