运行python manage.py runserver
时出现此错误
?:(urls.W005)URL名称空间“ main”不是唯一的。您可能无法 反转此命名空间中的所有URL
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')),
]
from django.urls import path
from . import views
app_name = 'main'
urlpatterns = [
path('', views.blog, name='blog'),
path("about/", views.about, name="about"),
]
答案 0 :(得分:0)
path('', include('main.urls'))
表示将包含main
中的所有url模式而没有任何其他前缀。
path('asdf/', include('main.urls'))
意味着来自main
的所有url模式将包含附加的asdf/
前缀,因此根索引url将变为asdf/
和{{1} }会变成about/
(在您的情况下为asdf/about/
)。
如果main.urls中有100500个网址格式,则仍只需要包含一次。