Я не могу создать новый 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.

Bro you need to do some step by step tutorial and courses otherwise you would keep getting stuck in simplest of applications. My best bet for you would be doing this course

I Did this course myself and the benifits were worth mentioning.Now I have clear understanding of the the installation and outs of the system

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