с пространством имен всеп впорядке.
Изменился метод задания namespace для include. Теперь есть два варианта: 1) передавать в include тупл из двух значений - urlpatterns (или путь к ним) и namespace Пример: path('blog/', include(('blog.urls', 'blog'))), 2) в файле urls.py, который импортируем (в случае моего примера - blog/urls.py) задать переменную app_name, которая и будет выступать неймспейсом Пример: # blog/urls.py app_name = 'blog' # core/urls.py path('blog/', include('blog.urls')), Если использовать второй вариант, то все так же как и раньше можно задавать namespace в include: # blog/urls.py app_name = 'blog' # core/urls.py path('blog/', include('blog.urls', namespace='blog')), Но в таком случае, задается 2 нейсмспейса (если namespace и app_name различаются) Пример: # blog/urls.py app_name = 'test' # core/urls.py path('blog/', include('blog.urls', namespace='blog')), Тогда # blog/urls.py path('', TemplateView.as_view(template_name='blog/index.html'), name='index'), будет резолвится в двух вариантах: <h2>{% url 'test:index' %}</h2> и <h2>{% url 'blog:index' %}</h2>
Обсуждают сегодня