簡體   English   中英

Django CRUD 模板未顯示

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM