【发布时间】:2019-12-04 00:14:15
【问题描述】:
当我单击特定链接时收到 TemplateDoesNotExist 错误,并且我从“模板加载器事后分析”中注意到 Django 正在搜索不正确且不存在的路径。
我最近将一个名为“reviews”的 Django 应用程序的一半内容移到了另一个名为“accelerators”的应用程序中。我的每个应用程序的模板目录都遵循以下模式:“应用程序名称”/模板(文件夹)/“应用程序名称”/html 模板。
将模板移动到加速器应用程序(并更新了我的设置和网址)后,Django 应该通过“accelerators/templates/accelerators/accelerator_form.html”查找模板,但根据错误消息,它正在搜索: 'accelerators/templates/reviews/accelerator_form.html'。
我怀疑这与我刚刚从评论应用程序中移动了此模板以及许多其他文件这一事实有关,但我无法弄清楚为什么会发生这种情况。我在下面包含了我更新的网址等以供参考。
基本目录 urlpatterns
urlpatterns = [
path('admin/', admin.site.urls),
path('login/', auth_views.LoginView.as_view(template_name='accounts/login.html'), name='login'),
path('logout/', auth_views.LogoutView.as_view(template_name='accounts/logout.html'), name='logout'),
path('', include('accounts.urls')),
path('reviews/', include('reviews.urls')),
path('accelerators/', include('accelerators.urls')),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
加速器/urls.py
from django.urls import path
from .views import (
AcceleratorListView,
accelerator_detail,
accelerator_reviews,
AcceleratorCreateView,
AcceleratorUpdateView,
AcceleratorDeleteView,
)
from . import views
urlpatterns = [
path('', AcceleratorListView.as_view(), name='accelerators'),
path('<int:pk>/', views.accelerator_detail, name='accelerator_detail'),
path('new/', AcceleratorCreateView.as_view(), name='accelerator_create'),
path('<int:pk>/update/', AcceleratorUpdateView.as_view(), name='accelerator_update'),
path('<int:pk>/delete/', AcceleratorDeleteView.as_view(), name='accelerator_delete'),
path('<int:pk>/reviews/', views.accelerator_reviews, name='accelerator_reviews'),
]
accelerators/views.py(我试图访问的视图)
class AcceleratorCreateView(LoginRequiredMixin, CreateView):
model = Accelerator
fields = ['name', 'website', 'locations', 'bio', 'sector_focus', 'stage', 'deal', 'duration', 'logo']
def form_valid(self, form):
form.instance.author = self.request.user
return super().form_valid(form)
base.html 模板(相关链接)
<li><a class="dropdown-link" href="{% url 'accelerator_create' %}">Add Company</a></li>
【问题讨论】: