【发布时间】:2019-07-14 12:09:06
【问题描述】:
我正在尝试删除urls 中的尾部斜杠,或者如果在末尾添加斜杠则进行重定向。我试图在 Internet 上的资源上做到这一点,但它对我不起作用。我想我做错了什么。
urls.py - 应用
app_name = 'shop'
urlpatterns = [
# product
path('', views.product_list, name='product_list'),
path('show/<slug:slug>', views.product_show, name='product_show'),
path('<slug:category>', views.product_list, name='lst_by_ctgry'),
path('<slug:category>/<slug:subcategory>', views.product_list, name='lst_by_subctgry'),
path('<slug:category>/<slug:subcategory>/<slug:kind>', views.product_list, name='lst_by_knds'),
# info - these urls doesn't work without slashes. works only with slashes
path('pad', views.pad, name='pad'),
path('guarantee', views.guarantee, name='guarantee'),
path('contacts', views.contacts, name='contacts'),
path('about', views.about, name='about'),
path('privacy', views.privacy, name='privacy')
]
urls.py - 项目
urlpatterns = [
path('', include('orders.urls')),
path('', include('cart.urls')),
path('', include('shop.urls')),
path('admin/', admin.site.urls),
]
settings.py
APPEND_SLASH = False
REMOVE_SLASH = True
MIDDLEWARE = [
...
'django.middleware.common.CommonMiddleware',
...
]
Сan你举个例子请我如何删除所有网址中的尾部斜杠或获取重定向
【问题讨论】:
-
惯例是在 URL 后面加上斜杠。为什么要这样做?
-
@IainShelvington,我想让它在 URL 的末尾没有斜杠,如果添加了,那么它将被重定向到没有破折号的地址
标签: django django-urls