2
votes

Comment corriger l'erreur "Page non trouvée (404)" ("Django a essayé ces modèles d'URL ... Le chemin vide ne correspond à aucun de ceux-ci.")

En tant que débutant dans Django, j'ai rencontré le même problème que beaucoup avant moi. J'apprécierais que vous ne marquiez pas ma question comme un double immédiatement parce que j'ai vérifié les correctifs suggérés par ces anciens messages, mais en vain.

Je suivais ce tutoriel et ont terminé avec tout jusqu'à la rubrique "Projets App: Modèles". Maintenant, quand je démarre le serveur, à http: // localhost: 8000 / j'obtiens:

Page non trouvée (404) Méthode de demande: GET URL de la requête: http: // localhost: 8000 /

En utilisant l'URLconf définie dans personal_portfolio.urls, Django a essayé ces modèles d'URL, dans cet ordre:

from django.urls import path
from . import views

urlpatterns = [
    path("", views.project_index, name="project_index"),
    path("<int:pk>/", views.project_detail, name="project_detail"),
]

Le chemin vide ne correspond à aucun de ces éléments.

Vous voyez cette erreur car vous avez DEBUG = True dans votre fichier de paramètres Django. Changez cela en False, et Django affichera une page 404 standard.

Voici la sortie de la console lorsque j'exécute le serveur:

La vérification du système n'a identifié aucun problème (0 désactivé).

05 avril 2019-15: 31: 54

Django version 2.2, en utilisant les paramètres 'personal_portfolio.settings'

Démarrage du serveur de développement à http://127.0.0.1:8000/

Quittez le serveur avec CTRL-BREAK.

Non trouvé: /

[05 / Avr / 2019 15:32:01] "GET / HTTP / 1.1" 404 2042

Non trouvé: /favicon.ico

[05 / Avr / 2019 15:32:01] "GET /favicon.ico HTTP / 1.1" 404 2093

Ce que j'ai essayé, mais je n'ai pas aidé:

  1. redémarrage du serveur,
  2. vérification de mon code dans les fichiers par rapport au code source du didacticiel ,
  3. Nous nous sommes assurés que 'projets' se trouve dans la liste INSTALLED_APPS dans settings.py .

Voici urls.py qui se trouve dans rp-portfolio \ personal_portfolio:

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

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

Voici urls.py qui se trouve dans rp-portfolio \ projects:

admin/
projects/


1 commentaires

Qu'est-ce qui vous déroute dans l'erreur? Vous n'avez pas de chemin pour "/", vous en avez juste un pour "/ projects".


4 Réponses :


2
votes

Dans le urls.py

from django.urls import path
from django.views.generic import RedirectView

urlpatterns = [
    path('admin/', admin.site.urls),
    path('projects/', include('projects.urls')),
    path('', RedirectView.as_view(url='/projects/')),
]


0 commentaires

0
votes

essayez ceci

​​dans urls.py

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

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

j'espère que cela vous aidera


0 commentaires

0
votes

comme vous recherchez un chemin dans le projet, votre chemin demandé doit être ce http: // localhost: 8000 / projects /


0 commentaires

0
votes

Vous devez ajouter:

from django.urls import path
from django.conf.urls import url
from . import views

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

ajouter ceci: à partir de l'url d'importation de django.conf.urls

pour que cela ressemble à:

in polls/urls.py


0 commentaires