
Certo, existe algum motivo válido específico para o motivo pelo qual - apesar de eu ter feito tudo corretamente - recebo a mensagem de erro 404 quando implanto meu servidor de desenvolvimento (na porta 8000) do PyCharm?
Este é o tutorial que estou seguindoTutorial do YouTubeque segui ao pé da letra. Por que funciona para ele e não para mim?
Tenho a confirmação de que os serviços foram iniciados. Eu comecei isso usando o seguinte comando
python manage.py runserver
Por que é que ao definir meus caminhos de URL no /urls
arquivo de configuração no framework Django, o navegador simplesmente decide não se preocupar em realmente ler o arquivo?
- Tentei alterar o número da porta nas configurações do aplicativo PyCharm - mas o que teria sido muito simples.
- Tentei fechar o aplicativo e reiniciá-lo - é claro que não funcionou porque tornaria minha vida muito mais fácil
- Eu tentei pesquisar o problema no Google, ele sugeriu o acima
Aqui está o meu código abaixo, o primeiro trecho é aparentemente onde está o problema de acordo com o navegador. Eles estão em arquivos separados:
#Filename: pyshop/urls.py
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('products/', include('products.urls'))
]
from django.urls import path
from . import views
urlpatterns = [
path('', views.index)
]
from django.http import HttpResponse
from django.shortcuts import render
def index(request):
return HttpResponse('Hello World')
Você verá que não é meu código. Então o que é? E como faço para me livrar do problema 404?
Responder1
A URL http://example.com/
(que é um caminho vazio!) Não corresponde ao prefixo admin/
nem ao prefixo admin/
.
Anexe um prefixo ao URL que você está tentando abrir (por exemplo, tente openinig http://example.com/admin/
) ou adicione uma nova entrada em seus urlpatterns sobre para onde o URL vazio deve apontar/redirecionar.