Я не могу создать новый url на django

я просмотрел несколько уроков о том, как создать новый простой url, но почему-то он не работает, похоже, что я не зарегистрировал ни одного url, хотя я это сделал.

я создал приложение под названием 'Login' и зарегистрировал его в списке «INSTALLED APPS» в settings.py в django :

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'Login.apps.LoginConfig',
]

затем я создал функцию под названием 'home' в файле views приложения, чтобы показать фразу на странице:

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

def home(request):
    return HttpResponse('Hello')

и затем я создал новый путь к url в файле urls.py проекта, сначала без имени, просто («»):

from django.contrib import admin
from django.urls import path

from Login.views import home

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', views.home),

]

и когда я использую команду (python manage.py runserver), он просто возвращается на страницу «успешной установки» django, ту самую, с маленькой ракетой.

Затем я попробовал использовать имя для url («home/»):

from django.contrib import admin
from django.urls import path

from Login import views

urlpatterns = [
    path('admin/', admin.site.urls),
    path('home/', views.home)

]

но когда я обращаюсь к (localhost:8000/home/), он говорит, что такой url не найден, вот сообщение, которое я получаю со страницы:

Страница не найдена (404)

Метод запроса:GETRequest URL:http://127.0.0.1:8000/home/

Используя URLconf, определенный в setup.urls, Django попробовал эти шаблоны URL, в таком порядке:

  1. admin/

Текущий путь, home/, не соответствует ни одному из этих путей.

Вы видите эту ошибку, потому что у вас в файле настроек Django стоит DEBUG = True. Измените это на False, и Django отобразит стандартную страницу 404.

И вот какое сообщение я получаю из терминала:

19/Jan/2025 11:33:11] «GET / HTTP/1.1» 200 12068

Не найдено: /home/

[19/Jan/2025 11:33:16] «GET /home/ HTTP/1.1» 404 2189

Не найдено: /home/

[19/Jan/2025 11:33:17] «GET /home/ HTTP/1.1» 404 2189

Я также пытался установить DEBUG на False, но это ничего не изменило. Я также попробовал создать файл urls.py в папке app, но это также не помогло. Пожалуйста, помогите мне lol, я не очень хорошо владею английским, поэтому надеюсь, что объяснил все правильно.

Вам нужно будет «включить» ваше приложение в корневой urls.py проекта (где находится ваш администраторский URLConf. Это urls.py уровня вашего проекта, и обычно он находится в той же директории, что и settings py. Он должен выглядеть следующим образом:

from django.contrib import admin
from django.urls import path, include 

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('Login.urls')),

]

Затем в файле URLs.py уровня приложения (тот, который вы создали), обычно находящемся в каталоге приложений:

from django.urls import path

from . import views

urlpatterns = [
    path('home/', views.home)

]

Теперь запустите python manage.py runserver, и ваш сайт должен быть доступен по адресу localhost:8000/home/. Смотрите docs.

Братан, тебе нужно пройти несколько пошаговых руководств и курсов, иначе ты так и будешь застревать в простейших приложениях. Я бы посоветовал тебе пройти этот курс

Я Сам прошел этот курс, и его преимущества заслуживают упоминания.Теперь у меня есть четкое представление об установке и отказах от системы

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