【发布时间】:2021-12-25 06:44:26
【问题描述】:
我有一个基本的 django 应用程序,并希望从匹配具有相似结构的其他路由中排除路由
下面是我的urls.py
from django.urls import path
from . import views
app_name = 'blogs'
urlpatterns = [
path('', views.index, name = 'index'),
path('create', views.create, name = 'create'),
path('<str:handle>', views.show, name = 'blogs'),
]
我希望path('create'), views.create, name = 'create') 进入创建博客页面,path('<str:handle>', views.show, name = 'blogs'), 进入博客的详细信息页面。
当我导航到 http://localhost:8000/blogs/create 时,我收到 404 找不到博客错误
如何将create 排除在与博客详细信息页面的<str:handle> 匹配?
编辑
主应用程序 url 的 url.py
urlpatterns = [
path('blogs/', include(('blogs.urls', 'blogs'), namespace = 'blogs')),
path('admin/', admin.site.urls),
]
【问题讨论】:
-
您能否将包含
create的其余网址包括在内?将create放在blogs之前可能会起作用 -
我做了,但仍然收到错误
-
您更新了您的网址以匹配上面的代码并且
/blogs/create仍然进入views.show视图?这听起来不太可能。您可以发布其余的网址吗? -
请。
/blogs/create/转到views.create视图,但/blogs/create转到views.show视图
标签: python django regex routes django-urls