Ошибка несогласованного URL в Django из учебника YT для начинающих

Как видно на первом снимке экрана, /products/new не отображается как действительный URL, хотя я в точности следовал руководству по кодированию с YouTube. По какой-то причине перед «new» стоит пустой символ, но в текущем пути, который я пытаюсь запросить, нет пустого места. Я не знаю, нормально это или нет. Я использую django версии 2.1, если это имеет значение

URL действительно работает для products/salt/. Что странно, URL раньше был products/trending/, но я получал ту же ошибку, поэтому я случайно изменил URL на salt, и он начал работать для меня.

[Страница не найдена (404) Метод запроса: GET URL запроса: http://127.0.0.1:8000/products/new/ Используя URLconf, определенный в pyshop.urls, Django попробовал эти шаблоны URL, в таком порядке:

admin/ продукты/ продукты/ соль продукты/новые Текущий путь, products/new/, не соответствует ни одному из этих путей.]1

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


def index(request):
    return HttpResponse('Hello World')


def trending(request):
    return HttpResponse('Trending Products')



def new(request):
    return HttpResponse('New Products')[2]

from django.urls import path
from . import views


urlpatterns = [
    path('', views.index),
    path('salt', views.trending),
    path('new', views.new)[3]

Добавьте в URL-шаблоны концевой слэш /, чтобы решить эту проблему, т.е. new/ и trending/.

Также, как уже упоминалось в моем комментарии, я бы посоветовал вам перейти на безопасную версию Django, чтобы получить доступ к новым функциям.

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