webentwicklung-frage-antwort-db.com.de

Die aktuelle URL app/stimmt mit keiner dieser Adressen überein

Ich bin ein Neuling in Django und habe vor einem Tag angefangen, Django 1.10 auf meinem lokalen Server zu installieren.

Ich habe alle Anweisungen dieses Links https://docs.djangoproject.com/en/dev/intro/tutorial01/ befolgt. Ich bekomme jedoch ständig diesen Fehler:

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.

Ich habe eine Umfrage-App erstellt, um loszulegen.

Um zu beginnen, ging ich mit view.py, hier ist der Code:

umfragen/Ansichten.py

from Django.shortcuts import render

# Create your views here.

from Django.http import HttpResponse


def index(request):
    return HttpResponse("Hello World!")

Hier ist mein Code für urls.py:

polls/urls.py

from Django.conf.urls import patterns, url

from . import views

urlpatterns = patterns('',
    url(r'^$', views.index, name='index'),
)

Und hier ist die urls.py in root:

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)),
)

Ich habe viel Zeit gebraucht, um die Lösung herauszufinden. Ich habe herausgefunden, dass diese Frage schon oft gestellt wurde. Also habe ich auch mit diesen Lösungen versucht, aber keine davon hat für mich funktioniert.

Ich kann nicht herausfinden, was mir hier fehlt, also bitte ich Sie auf die Lücke aufmerksam zu machen.

7
Dhaval

Ich denke, Sie haben die falsche Datei bearbeitet, als Sie die Root-URL-Konfiguration ändern wollten.

Stellen Sie sicher, dass Sie die Root-URL-Konfiguration in mysite/mysite/urls.py (das Verzeichnis, das settings.py enthält) und nicht mysite/urls.py (das Verzeichnis, das manage.py enthält) bearbeiten. 

Installieren Sie als allgemeine Empfehlung die neueste Version, derzeit 1.9. Verwenden Sie nicht 1.10, das gerade entwickelt wird. Stellen Sie sicher, dass Sie das Tutorial für 1.9 befolgen, da sich das Tutorial für verschiedene Versionen ändert. Zum Beispiel stimmt Ihr mysite/urls.py nicht mit dem Tutorial für 1.9 überein, da die urlpatterns sein sollte:

urlpatterns = [
    url(r'^polls/', include('polls.urls')),
    url(r'^admin/', admin.site.urls),
]
16
Alasdair

In settings.py haben Sie einen Einstellungsnamen INSTALLED_APPS-

Fügt die App hinzu, d. H. polls.

INSTALLED_APPS = [
    'Django.contrib.admin',
    'Django.contrib.auth',
    ....
    'polls',
]
6
utkbansal

neue Funktionen in Django erfordern neue Lösungen ...

from Django.conf.urls import url
from Django.contrib import admin

from polls.views import urls

urlpatterns = [
    ...
    url(r'^polls/$', urls),
] 

tippe deinen Browser ein, getestet in Django 1.10

http: // localhost: 8000/polls/

Laden Sie ein funktionierendes "HelloWorld" Beispiel in Django 1.10 herunter

https://mega.nz/#!qFsgBbRD!lAKKprkMLmhJcaZ8h5NPxkZcfQpB8qrh1nU4rSSaRAo

Ändern Sie die 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)),
    )

Führen Sie dann Ihren Server aus und besuchen Sie 127.0.0.1/8000. Dies sollte Sie zum Index der ur Website führen.

oder Sie lassen Ihren Code so wie er ist und führt 127.0.0.1/8000/polls in Ihrem Browser aus

1
Bello Tomi

Es funktioniert. Gehen Sie zu Ihrer URL-Leiste und geben Sie Ihren App-Namen ein:

http://127.0.0.1:8000/home

Mein App-Name ist zu Hause. Es wird klappen.

Wenn Sie Ihre App als Standardseite festlegen möchten, importieren Sie Ansichten aus Ihrer App.

Mögen

from home import views

dann schreibe

url(r'^$', views.index),

innerhalb.

Die Ansichten werden als Standardseite festgelegt

http://127.0.0.1:8000/

Wenn Sie dies eingeben, wird auf Ihre Ansichten umgeleitet.

Ich hatte das gleiche Problem wie beschrieben. Einen Windows-Computer ausführen.

Es stellte sich heraus, dass die von mir verwendete virtuelle Umgebung nicht ordnungsgemäß konfiguriert wurde (oder ich hatte vergessen, sie vor der Installation von Django zu aktivieren) und der Interpreter und der Django-Admin von CMD.EXE vom falschen Pfad abgerufen wurden.

Wenn es so aussieht, als ob Django Ihre urls.py "ignoriert" - versuchen Sie, alles zu löschen, die virtuelle Umgebung neu zu erstellen, sie zu aktivieren und anschließend Django erneut zu installieren. 

Hoffe das hilft.

1
Alexey Rodimov

Ich hatte auch das gleiche Problem, das offizielle Docs-Tutorial durchzuarbeiten. Ich habe Cloud 9 verwendet. Was ich erkannte, bevor ich dieses Problem lösen konnte, war, dass ich mich beim Erstellen des Arbeitsbereichs bereits für Django entschieden habe (dh, als mein Arbeitsbereich erstellt wurde, war Django bereits installiert) $ Django-admin startproject mysite erneut ausgeführt und dabei eine andere Schicht von Django mit mehreren Verzeichnissen und unvermeidlicher Verwirrung. Meine Lösung bestand darin, alles zu löschen und von vorne zu beginnen.

Da dieses Problem vielen Menschen gemeinsam ist, schlage ich vor, dass die Dojo-Anleitungen für Django diesbezüglich deutlicher sein sollten.

Ich hoffe das hilft jemandem.

0
adebayo

wenn die Antwort von @Alasdair nicht funktioniert und Sie anscheinend mit korrekten Dateien arbeiten, starten Sie einfach Ihren Server neu

0
user2338925