2016-07-01 5 views
0

so habe ich eine Django-Anwendung mit drei HTML-Seiten erstellt. Ich möchte von einer Seite, die nicht die Startseite ist, zu einer anderen. Allerdings scheint die URL etwas verwechselt zu sein, wenn der Server versucht, auf die letzte Seite zuzugreifen.Django URL Konfigurationsfehler

Hier ist meine Anwendung urls.py:

from django.conf.urls import url 
    from . import views 
    urlpatterns = [ 

      url(r'^$',views.homepage,name='homepage'), 
      url(r'^findnow.html/$',views.findnow,name='findnow'), 
      url(r'^more.html/$',views.more,name='more') 
    ] 

ich von "findnow.html" bis "more.html" gehen wollen. Ich möchte, dass die URL "localhost: port/more" lautet, aber stattdessen geht der Server zu "localhost: port/findnow.html/more.html".

Hier ist mein HTML-Code-Snippet für findnow:

 <body> 
     <div id="googleMap" style="width:500px;height:380px;text-align:center;"></div> 
     <a href="more.html">MORE</a> 
     </body> 
    </html> 

Hier ist mein views.py:

def more(request): 
     return render(request,'myapp/more.html') 

Antwort

1

Dies geschieht, weil Sie more.html als relative Seite verweisen.

<a href="/more.html">MORE</a> 

Oder umgekehrt es mit dem url-Tag statt:

<a href="{% url 'more' %}">MORE</a> 
+0

Danke, es funktioniert jetzt! :) –

2

es so anpassen sein:

Sie sollten entweder ein / es prepend

from django.conf.urls import url 
from . import views 
urlpatterns = [ 

     url(r'^$',views.homepage,name='homepage'), 
     url(r'^findnow/$',views.findnow,name='findnow'), 
     url(r'^more/$',views.more,name='more') 
] 

Und Ihre Vorlage:

 <body> 
     <div id="googleMap" style="width:500px;height:380px;text-align:center;"></div> 
     <a href="{% url 'more' %}">MORE</a> 
    </body> 
</html>