?: (urls.W005) URL 命名空间“main”不是唯一的。您可能无法反转此命名空间中的所有 URL

kha*_*aha 4 python django

我在运行时收到此错误python manage.py runserver

?: (urls.W005) URL 命名空间“main”不是唯一的。您可能无法反转此命名空间中的所有 URL

我的网站/urls.py

from django.contrib import admin
from django.urls import path, include
from users import views as user_views

urlpatterns = [
    path('register/', user_views.register, name='register'),
    path('', include('main.urls')),
    path('admin/', admin.site.urls),
    path('about/', include('main.urls')),
]
Run Code Online (Sandbox Code Playgroud)

主/urls.py

from django.urls import path
from . import views

app_name = 'main'

urlpatterns = [
    path('', views.blog, name='blog'),
    path("about/", views.about, name="about"),
]
Run Code Online (Sandbox Code Playgroud)

Iva*_*tin 6

path('', include('main.urls'))意味着所有的 url 模式都来自main意味着将包含

path('asdf/', include('main.urls'))意味着所有 url 模式都main将包含额外的asdf/前缀,因此根索引 url 将变为asdf/并且about/将变为asdf/about/(在您的情况下 - about/about/)。

如果 main.urls 中有 100500 个 url 模式,您仍然只需要包含它们一次。