[英]Django CRUD template not showing up
我正在使用类实例制作 CRUD 应用程序。 我的应用程序是一个非常简单的会计应用程序:
Django:3.03 Python:3.8.0
帐户/模型.py
class Project(models.Model):
## normal fields
帐户/视图.py
class ProjectCreate(CreateView):
model = Project
fields = '__all__'
class ProjectUpdate(UpdateView):
model = Project
fields = '__all__'
class ProjectDelete(DeleteView):
model = Project
success_url = reverse_lazy('project')
帐户/ urls.py:
urlpatterns = [
path('project/create/', project_views.ProjectCreate.as_view(), name='project_create'),
path('project/<int:pk>/update/', project_views.ProjectUpdate.as_view(), name='project_update'),
path('project/<int:pk>/delete/', project_views.ProjectDelete.as_view(), name='project_delete'),
]
我在以下目录下有 2 个模板文件:
accounts
accounts
templates
project
project_form.html
project_confirm_delete.html
models.py
urls.py
views.py
forms.py
当我调用视图时:
http://localhost:8000/accounts/project/create/
我收到以下错误:
47, in select_template
raise TemplateDoesNotExist(', '.join(template_name_list), chain=chain)
django.template.exceptions.TemplateDoesNotExist: accounts/project_form.html
设置.py:
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages',
'accounts.utils.accounts_vars',
],
},
},
]
我无法弄清楚为什么这不起作用。 你能帮忙吗。 任何帮助将非常感激。 谢谢。
检查您的 settings.py 文件
视图无法呈现您的模板。 在 settings.py 中提及模板目录,并检查您的模板是否存在
您没有告诉您的视图使用哪个模板。 您可以通过在视图中设置 template_name 参数来完成此操作,例如:
class ProjectUpdate(UpdateView):
model = Project
fields = '__all__'
template_name = 'project/project_form.html
'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.