Я прохожу учебник по Django, но в настоящее время застрял в ошибке, т.е.«Страница не найдена» на странице администратора - PullRequest
0 голосов
/ 19 сентября 2019

Страница не найдена (404)

Метод запроса:

GET

URL запроса:

http://127.0.0.1:8000/

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

Пустой путь не соответствовал ни одному из них.

Вы видите эту ошибку, потому что у вас есть DEBUG= True в вашем файле настроек Django.Измените это на False, и Django отобразит стандартную страницу 404.

Вот мой код: Main ecom \ urls.py: ------------ >>>>

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

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

Now shop \ urls.py:-------------- >>>>

from django.urls import path
from . import views

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

И магазин \ views.py: -------------- >>>>

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

def index(request):
    return HttpResponse("Shop Index")

Пожалуйста, помогите мне, ребята

Ответы [ 2 ]

0 голосов
/ 19 сентября 2019

Вы не определили пустой URL.В основном URLs.py вы использовали path('shop/', include('shop.urls')), а в магазине urls.py path("",views.index, name="ShopHome").этот путь будет перенаправлен на http://127.0.0.1:8000/shop/, а не на http://127.0.0.1:8000/.

. Если вам нужен пустой URL, сделайте следующее: ecom \ urls.py:

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

shop \ urls.py

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

помните, что вы добавляете в path('', include('shop.urls')), оно будет добавлено во все URL-адреса, записанные в приложении магазина.

Если вы хотите добавить пустой URL-адрес, а также добавьте «магазин» в остальных URL-адресах, сделайте это:

From shop import views
urlpatterns = [
    path('admin/', admin.site.urls),
    path('shop/', include('shop.urls'))
    path('',views.index, name="ShopHome")
]
0 голосов
/ 19 сентября 2019

Единственные страницы, которые должны работать на вас сейчас, это /shop/ и /admin/.Корневой страницы нет, потому что у вас есть include, который всегда начинается с /shop/ и проверяет shop/urls.Не уверен, что вы хотите, но если вы хотите, чтобы корневая страница предоставляла вам индексное представление, вы можете изменить ecom/urls shop url на:

path('', views.index, name="ShopName)

Не забудьте импортировать представления курса

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