2017-02-04 4 views
-2

Gewöhnliche Konzept ist zu verwenden urls.py und views.py. So definieren Sie in urls.py für Hauptseite smth wie:Django und Frontend. Wie nicht Django URLs und Vorlagen verwenden

urlpatterns = [ 
    url(r'^', project.views.index), 
] 

und dies in views.py:

def index(request): 
    return render(request, 'index.html') 

Aber ich sah Code, wo es in urls.py für die Hauptseite nicht url war und alle anderen Seiten.

Ich kann erkennen, dass mit diesen modernen Frameworks und ihren Routing-Modulen weiteres Routing möglich ist. Aber ich kann nicht erkennen, wo der Einstiegspunkt ist, der sagt: "Nehmen Sie diese Haupt-HTML-Seite für diese Route".

Es ist ein sehr interessanter Ansatz, also möchte ich es auch implementieren, aber ich weiß nicht einmal, wie ich die passenden Wörter finde, um irgendein Material zu finden, um dies zu realisieren.

+0

Können Sie den Code, den Sie gesehen haben, angeben? AFAIK gibt es keine Möglichkeit, HTML-Vorlagen direkt an URLs zu binden, ohne dazwischen eine Ansicht zu verwenden. – dahrens

+0

leider nein, internes Projekt – Snobby

+0

Haben Sie vielleicht ein Flaschenprojekt gesehen? Oder etwas, das [Werkzeug routing] verwendet hat (http://flask.pocoo.org/docs/0.12/patterns/viewdecorators/)? – Withnail

Antwort

1

Sprechen Sie über eine einseitige App? Möglicherweise mit Django REST-Framework mit einem Front-End-Framework wie Angular und React. Sie würden nur eine URL für die einzelne Seite deklarieren und dann Front-End das Routing behandeln lassen.

var app = angular.module("myApp", ["ngRoute"]); 
app.config(function($routeProvider) { 
    $routeProvider 
    .when("/", { 
     templateUrl : "main.htm" 
    }) 
    .when("/red", { 
     templateUrl : "red.htm" 
    }) 
    .when("/green", { 
     templateUrl : "green.htm" 
    }) 
    .when("/blue", { 
     templateUrl : "blue.htm" 
    }); 
}); 
+0

Ja, Single-Seite App, das ist, was ich suche. Soll ich diese Einstiegsseite mit Django 'views.py' und' urls.py' deklarieren? Oder gibt es einen anderen Weg, dies zu tun? – Snobby

+1

Ja, ich würde die Einstiegsseite so deklarieren! Erstellen Sie einfach eine index.html und verknüpfen Sie sie mit einer Ansicht! – zubhav