姜戈;TemplateDoesNotExist 错误 - 博客应用

刘易斯·诺斯科特

我试图按照 oline 教程创建一个博客应用程序,但在加载一些模板时遇到了困难。

好像找不到 blog/templates/blog/... 中的模板。

页面http://127.0.0.1:8000/blog/加载正常。下面包括来自 settings.py、views.py 和 urls.py 文件的当前代码。

设置.py

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

... 

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',

    # third party installs go here.
    'products',
    'pages',
    'blog',
]

...

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR, "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',
            ],
        },
    },
]

视图.py

from django.shortcuts import render, get_object_or_404
from django.http import Http404

# Create your views here.

from .models import BlogPost
def blog_post_list_view(request):
    qs = BlogPost.objects.all()  # queryset -> list of python objects
    template_name = 'blog/blog_post_list.html'
    context = {"object_list": qs}
    return render(request, template_name, context)


def blog_post_create_view(request):
    # create objects
    #template_name = 'blog/blog_post_create.html'
    context = {"form": None}
    return render(request, "blog/blog_post_create.html", context)


def blog_post_detail_view(request, slug):
    obj = get_object_or_404(BlogPost, slug=slug)
    template_name = 'blog_post_detail.html'
    context = {"object": obj}
    return render(request, template_name, context)


def blog_post_update_view(request, slug):
    obj = get_object_or_404(BlogPost, slug=slug)
    template_name = 'blog_post_update.html'
    context = {"object": obj, 'form': None}
    return render(request, template_name, context)


def blog_post_delete_view(request, slug):
    obj = get_object_or_404(BlogPost, slug=slug)
    template_name = 'blog_post_delete.html'
    context = {"object": obj}
    return render(request, template_name, context)

网址.py

from django.urls import path
from .views import (
    blog_post_create_view,
    blog_post_detail_view,
    blog_post_list_view,
)

app_name = 'blog'
urlpatterns = [
    path('<str:slug>/', blog_post_detail_view),
    path('', blog_post_list_view),
    path('new-post', blog_post_create_view),
]
埃里克

您的模板有不同的路径(缺少“博客/”):

template_name = 'blog/blog_post_list.html'
template_name = 'blog_post_detail.html'
template_name = 'blog_post_update.html'

您还需要确保您已在此处制作模板:

blog/templates/blog/blog_post_list.html <...>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

姜戈。创建对象 ManyToManyField 错误

无法在注册模板中看到错误消息。姜戈

如何根据返回的错误控制模板渲染?姜戈

如何修复此异常和类型错误?(姜戈)

编辑现有表单的表单不保存并重定向到错误。姜戈

当我尝试登录用户时出现登录错误。姜戈

姜戈 - 帮助!Settings.py、urls.py 和 views.py 导致 404 错误

我应该为每个页面创建一个应用程序吗?(姜戈)

Codeigniter博客应用程序:避免重复输入错误

Python。姜戈。错误“没有提交文件。检查表单上的编码类型”与 UpdateView 类

姜戈翻译

姜戈。外键

如何在不同的应用程序更新数据库后刷新表单字段并查看?姜戈,蟒蛇

为什么我不能在制作之前在setting.py中添加我的应用程序?(姜戈)

不显示图像!姜戈

姜戈。产品的几张图片

姜戈。临时上传文件

bootstrap.min.js:6 未捕获的错误:Bootstrap 的 JavaScript 在 bootstrap.min.js:6 处需要 jQuery。姜戈。引导程序 3

“方法 \"GET\" 不允许。” 姜戈

姜戈。记录未正确删除

姜戈 | 获取每月文章数

Codeigniter 3 博客应用程序错误:即使帖子标题没有更改,也会发布 slug 更新

Octopress博客部署在localhost上,没有日志错误,在Heroku上抛出“没有这样的应用程序”消息

django错误TemplateDoesNotExist

TemplateDoesNotExist-Django错误

Django:Strange TemplateDoesNotExist错误

我收到错误 TemplateDoesNotExist

Django模板错误“ TemplateDoesNotExist at”

Django 2.2:TemplateDoesNotExist at/ 错误