Django не распознает мой url, не удается попасть в приложение

Я очень новичок в Django, просто пробую с url в представление структура в основном такая:

Новый год: (все эти файлы приложений + шаблоны) тест (все эти файлы сайта + шаблоны) manage.py

на новый год urls.py

from django.urls import path
from . import views

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

на views.py

from django.shortcuts import render
import datetime

# Create your views here.
def index(request):
    now = datetime.datetime.now()
    return render(request, 'newyear/index.html', {
        "newyear": now.month == 1 and now.day == 1  
    })

на urls.py в test

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

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

I have rerun the server but still only recognizes /admin, please help thanks

настройки в тесте

INSTALLED_APPS = [
    'newyear',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
]

Возможно, вам придется установить app_name в файле newyear urls.py. он должен выглядеть так:

from django.urls import path
from . import views

app_name = "newyear"   #set this
urlpatterns = [
    path('', views.index, name='index')
]

На ваш сайт можно попасть через http://localhost/newyear

Это происходит из-за ваших url-шаблонов в urls.py. Функция include добавляет все урлы из заданного списка и присоединяет их к исходному имени.

Чтобы исправить это, просто удалите newyear/ в urls.py

urlpatterns = [
    path('', include('newyear.urls')),
    path('admin/', admin.site.urls), ]
Вернуться на верх