Урлы django без косой черты показывают Page not found

в django урлы без косой черты в конце дают результат "Страница не найдена 404". тот же проект и тот же код на одном компьютере дает разный результат. Этот код используется, когда я получаю страницу без слеша:

from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
path('about', views.about, name='about'),
]

и этот тот же код, но я должен добавить слеш

from django.urls import path
from . import views

urlpatterns = [
path('', views.index, name='index'),
path('about/', views.about, name='about'),
]

что я жду во фронтенде, это мой views.py

from django.shortcuts import render
from django.http import HttpResponse

# Create your views here.

def about(request):
return HttpResponse('about page')

я жду вашей помощи ребята

Это поведение контролируется параметром APPEND_SLASH. В настройках по умолчанию APPEND_SLASH установлено значение True, что означает, что если запрашиваемый URL не совпадает ни с одним из путей, установленных в urls.py, будет произведено HTTP перенаправление на тот же URL с косой чертой.

Например: Предположим, что запрос на /foo.com/bar будет перенаправлен на /foo.com/bar/ в случае, если предоставленный URL /foo.com/bar является недопустимым шаблоном URL.

В документации указано, что

Обратите внимание, что перенаправление может привести к потере любых данных, переданных в POST-запросе.

Настройка APPEND_SLASH используется только в том случае, если установлено CommonMiddleware (см. раздел Middleware). См. также PREPEND_WWW.

пожалуйста, прочитайте документацию для дальнейшего разъяснения.

Вернуться на верх