Je suis un débutant à Django et je commence à le regarder avant un jour en installant Django 1.10 chez moi.
J'ai suivi toutes les instructions de ce lien https://docs.djangoproject.com/en/dev/intro/tutorial01/ . Cependant, j'obtiens continuellement cette erreur:
Page not found (404) Request Method: GET Request URL: http://127.0.0.1:8000/polls/
Using the URLconf defined in mysite.urls, Django tried these URL patterns, in this order:
^admin/
The current URL, polls/, didn't match any of these.
J'ai créé l'application de sondage pour commencer.
Pour commencer, je suis allé avec view.py, voici le code:
sondages/vues.py
from Django.shortcuts import render
# Create your views here.
from Django.http import HttpResponse
def index(request):
return HttpResponse("Hello World!")
Voici mon code pour urls.py:
sondages/urls.py
from Django.conf.urls import patterns, url
from . import views
urlpatterns = patterns('',
url(r'^$', views.index, name='index'),
)
Et voici l'urls.py en racine:
mysite/urls.py
from Django.conf.urls import patterns,include, url
from Django.contrib import admin
urlpatterns = patterns('',
url(r'^polls/', include('polls.urls')),
url(r'^admin/', include(admin.site.urls)),
)
J'ai passé un bon bout de temps à trouver la solution, j'ai constaté que cette question avait été posée à plusieurs reprises, alors j'ai essayé avec ces solutions également, mais aucune d'entre elles n'a fonctionné pour moi.
Je ne peux pas savoir ce qui me manque ici, alors attirez mon attention sur le vide.
Je pense que vous avez édité le mauvais fichier en essayant de changer la config de l'URL racine.
Assurez-vous d’éditer la configuration de l’URL racine dans mysite/mysite/urls.py
(le répertoire contenant settings.py
) et non pas mysite/urls.py
(le répertoire contenant manage.py
).
Comme conseil général, installez la dernière version, actuellement la 1.9. N'utilisez pas la version 1.10, qui est en cours de développement. Assurez-vous de suivre le didacticiel pour 1.9 , car le didacticiel change pour différentes versions. Par exemple, votre mysite/urls.py
ne correspond pas au didacticiel de la version 1.9, car la urlpatterns
devrait être:
urlpatterns = [
url(r'^polls/', include('polls.urls')),
url(r'^admin/', admin.site.urls),
]
Dans settings.py
vous avez un nom de paramètre INSTALLED_APPS-
Vous y ajoute l’application polls
.
INSTALLED_APPS = [
'Django.contrib.admin',
'Django.contrib.auth',
....
'polls',
]
les nouvelles fonctionnalités de Django nécessitent de nouvelles solutions ...
from Django.conf.urls import url
from Django.contrib import admin
from polls.views import urls
urlpatterns = [
...
url(r'^polls/$', urls),
]
tapez dans votre navigateur, testé dans Django 1.10
http: // localhost: 8000/polls/
Veuillez télécharger un exemple de travail "HelloWorld" dans Django 1.10
https://mega.nz/#!qFsgBbRD!lAKKprkMLmhJcaZ8h5NPxkZcfQpB8qrh1nU4rSSaRAo
changer le mysite/url
from Django.conf.urls import patterns,include, url
from Django.contrib import admin
urlpatterns = patterns('',
url(r'^&', include('polls.urls')),
url(r'^admin/', include(admin.site.urls)),
)
Ensuite, lancez votre serveur et visitez 127.0.0.1/8000.Cela devrait vous mener à l'index de votre site web.
ou vous laissez votre code tel quel et lancez 127.0.0.1/8000/polls sur votre navigateur
Ça marche. Allez dans votre barre d'URL et tapez le nom de votre application:
http://127.0.0.1:8000/home
Mon nom d'application est la maison. Ça va marcher.
Si vous souhaitez définir votre application comme page par défaut, importez des vues à partir de votre application.
Comme
from home import views
puis écrire
url(r'^$', views.index),
à l'intérieur.
Il va définir les vues comme votre page par défaut
http://127.0.0.1:8000/
Lorsque vous tapez ceci, il sera redirigé vers vos vues.
J'ai eu le même problème que décrit. Exécuter une machine Windows.
Il s'est avéré que l'environnement virtuel que j'utilisais n'avait pas été configuré correctement (ou j'avais peut-être oublié de l'activer avant d'installer Django) et que l'interpréteur et Django-admin avaient été récupérés par CMD.EXE depuis le mauvais chemin.
S'il semble que Django "ignore" votre urls.py - essayez de tout supprimer, recréez l'environnement virtuel, activez-le et réinstallez ensuite Django.
J'espère que cela t'aides.
Moi aussi j'ai eu le même problème en parcourant le didacticiel officiel de la documentation. J'utilisais le cloud 9. Avant de pouvoir résoudre ce problème, je réalisais que j'avais déjà choisi Django lors de la création de l'espace de travail (c'est-à-dire qu'au moment où mon espace de travail avait été créé, Django avait déjà été installé). à nouveau exécuté $ Django-admin startproject mysite
ayant ainsi une autre couche de Django avec plusieurs annuaires et inévitablement la confusion. Ma solution était de tout supprimer et de tout recommencer.
Puisque ce problème est commun à beaucoup de gens, je suggère que la documentation du tutoriel Django soit plus explicite à ce sujet.
J'espère que cela aidera quelqu'un.
si @Alasdair answer ne fonctionne pas et qu'il semble que vous travaillez avec les fichiers corrects, redémarrez simplement votre serveur.