Урлы 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.
пожалуйста, прочитайте документацию для дальнейшего разъяснения.