Страница Django не найдена с использованием простого пути - PullRequest
0 голосов
/ 07 декабря 2018

Я использую django версии 2.1.4.

Создала приложение 'main' внутри моего проекта и пытаюсь добраться до его urls.py, чтобы отобразить предложение "текст" в admin / main / test / * 1003.*

Однако, пока admin / и admin / main / работают, admin / main / test / выдает ошибку

Страница не найдена (404) Метод запроса: GET URL запроса: http://127.0.0.1:8000/admin/main/test

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

main/
admin/ [name='index']
admin/ login/ [name='login']
admin/ logout/ [name='logout']
admin/ password_change/ [name='password_change']
admin/ password_change/done/ [name='password_change_done']
admin/ jsi18n/ [name='jsi18n']
admin/ r/<int:content_type_id>/<path:object_id>/ [name='view_on_site']
admin/ auth/group/
admin/ auth/user/
admin/ main/movie/
admin/ ^(?P<app_label>auth|main)/$ [name='app_list']

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

Мои файлы:

statystyki / urls.py

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

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

main / urls.py

from django.urls import path
from .views import test_response

urlpatterns = [
    path('test/', test_response),
]

views.py

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


def test_response(request):
    return HttpResponse('test')

Не могли бы вы помочь мне найти проблему, которая вызывает это?Я уже добавил 'main' к установленным приложениям в settings.py

Ответы [ 2 ]

0 голосов
/ 07 декабря 2018

admin/', admin.site.urls путь администратора - только для приложения по умолчанию, и поэтому, когда вы пытаетесь получить с него страницу основного приложения, отображается ошибка, на которую вы ответили.Вы должны попробовать URL с вашим путём включения, где он равен path('main/', include('main.urls')),, а затем следовать внутренним путем основного файла, который является path('test/', test_response), Вкратце, вы должны иметь:

http://localhost:8000/main/test/
0 голосов
/ 07 декабря 2018

Вы пытаетесь получить доступ к неправильному URL.Попробуйте удалить /admin из URL.

Следовательно, URL будет http://127.0.0.1:8000/main/test/

...