Страница не найдена - написание первого приложения Django, часть 1 - PullRequest
0 голосов
/ 21 октября 2019

Я установил Django 2.2.5 в моей среде conda, и я следую учебному пособию по Django для Пишу ваше первое приложение Django, часть 1

Я точно следовал инструкциям, но япри попытке получить доступ к опросам / URL-адресу появляется ошибка «Страница не найдена».

Моя структура корневого каталога выглядит следующим образом

mysite/
    manage.py
    db.sqlite3
    urls.py
    mysite/
        __init__.py
        settings.py
        urls.py
        wsgi.py
    polls/
        migrations/
        __init__.py
        admin.py
        apps.py
        models.py
        tests.py
        urls.py
        views.py

И мое представление выглядит так

D: \ TEMP \ djangotest \ mysite \ polls \ views.py

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

def index(request):
    return HttpResponse("Hello World.  You're at the polls index")

Мои файлы двух URL-адресов выглядят так:

D: \ TEMP \ djangotest \ mysite \ polls \ urls.py

from django.urls import path
from . import views

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

D: \ TEMP \ djangotest \ mysite \ urls.py

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

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

И я запускаю приложение из этой среды

(py3.6) D:\TEMP\djangotest\mysite>python manage.py runserver

Но когда я перехожу на URL, указанный в учебнике, выдается ошибка 404 - страница не найдена из консоли

October 21, 2019 - 16:23:13
Django version 2.2.5, using settings 'mysite.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.
Not Found: /polls
[21/Oct/2019 16:23:19] "GET /polls HTTP/1.1" 404 1954

Из браузера это выглядит как

Page not found (404)
Request Method:
GET
Request URL:
http://localhost:8000/polls
Using the URLconf defined in mysite.urls, Django tried these URL patterns, in this order: 
admin/ 
The current path, polls, didn't match any of these. 
You're seeing this error because you have DEBUG = True in your Django settings file. Change that to False, and Django will display a standard 404 page. 

1 Ответ

1 голос
/ 21 октября 2019

Ваш основной файл URL находится в неправильном каталоге. Похоже, вы создали отдельный urls.py в базовом каталоге «mysite»;вместо этого вы должны были отредактировать существующий в каталоге «mysite / mysite». Тот, который вы создали, вообще не используется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...