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), ]