Django删除结尾的斜杠-网址或重定向

时间:2019-07-14 12:09:06

标签: django django-urls

我正在尝试删除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',
    ...
]

请举一个例子,我如何删除所有URL中的尾部斜杠或获取重定向

1 个答案:

答案 0 :(得分:1)

尽管建议使用斜杠。但是如果您不想这样做,可以在项目的settings.py文件中进行更改。

settings.py

  

APPEND_SLASH = False