[PYTHON] DJango Hinweis: Von Anfang an (Erstellen einer Ansicht aus einer Vorlage)

Schließlich werde ich eine Seite mit der Vorlage erstellen.

Legen Sie den Speicherort der Vorlage fest

setting.py ######

TEMPLATE_DIRS = (
	'path/to/your/templates'	#Es sieht überall gut aus
)

Sobald Sie es eingerichtet haben, müssen Sie den Ort natürlich richtig vorbereiten.

Vorlage erstellen

Sobald das Vorlagenverzeichnis fertig ist, erstellen Sie weitere Unterverzeichnisse für jede App und erstellen Sie darin HTML-Vorlagen. Erstellen Sie dieses Mal index.html in "Umfragen".

index.html ######

{% if latest_poll_list %}
    <ul>
    {% for poll in latest_poll_list %}
        <li><a href="/polls/{{ poll.id }}/">{{ poll.question }}</a></li>
    {% endfor %}
    </ul>
{% else %}
    <p>No polls are available.</p>
{% endif %}

HTML kommt zwischen Python-Programmen. Ist jeder Prozess von {% hoge…%} bis {% endhoge%}? Es gibt einen Teil, der von {{}} umgeben ist, aber dies kann in PHP so etwas wie Echo sein. Es scheint, dass der Wert so wie er ist an HTML zurückgegeben wird.

Geben Sie die Vorlage als Ansicht ### an

Wenn Sie eine Vorlage haben, legen Sie sie als Ansicht für diese Seite fest.

views.py ######

from django.template import Context, loader
from polls.models import Poll
from django.http import HttpResponse

def index(request):
    latest_poll_list = Poll.objects.all().order_by('-pub_date')[:5]
    temp = loader.get_template('polls/index.html')
    contxt = Context({
        'latest_poll_list': latest_poll_list,  #Neueste anzeigen?
    })
    return HttpResponse(temp.render(contxt))

Wenn Sie das Verknüpfungsmodul verwenden, können Sie es auch wie folgt kurz schreiben.

from django.shortcuts import render_to_response
#Dadurch werden Vorlage und http unnötig
from polls.models import Poll

def index(request):
    latest_poll_list = Poll.objects.all().order_by('-pub_date')[:5]
    return render_to_response('polls/index.html',
                              {'latest_poll_list': latest_poll_list})
    #Kehren Sie mit dem Gefühl zurück, dass Temp und Contxt des vorherigen Codes zusammengefügt werden?

Persönlich bevorzuge ich am längsten den vorherigen Schreibstil (weil er leicht zu verstehen ist). Ich möchte die Verknüpfung verwenden, nachdem ich mich daran gewöhnt habe.

*** Übrigens gab es zwei beunruhigende Punkte, deshalb möchte ich sie erwähnen ***

  1. ’-pub_date’: Was bedeutet der erste Bindestrich?

  2. [: 5]: Ebenso ist der Dickdarm unklar.

Das nächste Mal werden wir die Einstellungen des Fehlerbildschirms fortsetzen.

Recommended Posts

DJango Hinweis: Von Anfang an (Erstellen einer Ansicht aus einer Vorlage)
DJango Memo: Von Anfang an (Erstellen einer Ansicht)
DJango Hinweis: Von Anfang an (mit einer generischen Ansicht)
DJango Hinweis: Von Anfang an (Formularverarbeitung)
DJango Memo: Von Anfang an (Vorbereitung)
DJango Hinweis: Von Anfang an (Vereinfachung und Aufteilung von URLConf)
DJango Memo: Von Anfang an (Modelleinstellung)
DJango-Memo: Von Anfang an (Bearbeiten des Verwaltungsbildschirms) Es gibt ein Rätsel
Geben Sie die Ansichts-URL in der Django-Vorlage an
DJango Memo: Von Anfang an (Fehlerbildschirmeinstellung)
Schritte von der Installation von Python 3 bis zur Erstellung einer Django-App
Machen Sie das Modell zu einer Zeichenfolge in der Django-HTML-Vorlage
Vorlagenregistrierung von Django Bootstrap
Die Geschichte des Django-Modellfeldes verschwindet aus der Klasse
DJango Memo: Von Anfang an (weitere Änderungen am Verwaltungsbildschirm)
Django: Klasse aus String importieren
DJango-Memo: Von Anfang an (über den Verwaltungsbildschirm) mein Suchtpunkt
Machen Sie einen Filter mit einer Django-Vorlage
Beachten Sie, dass Sie die im Django-Vorlagenformular übergebenen Parameter Element für Element manuell dekorieren möchten
So finden Sie den Ansichtsnamen mit dem Namespace über die URL (path_info) in Django
[Django] So übergeben Sie Werte direkt von Vorlagen-Tags an JavaScript-Variablen
[Hinweis] Lesen Sie eine Datei aus einem anderen Verzeichnis
Notizen vom Anfang von Python 1 lernen
Lassen Sie die Stückliste am Anfang der Zeichenfolge weg
Befehle zum Erstellen eines neuen Django-Projekts
(Hinweis) Suchreihenfolge der Vorlagendateien in Django
Erstellen eines Anmeldebildschirms in Django all auth
Hinweise zum Aktivieren von PostgreSQL mit Django
Verwenden Sie Django aus einem lokalen Python-Skript
Notizen vom Anfang von Python 2 lernen
Holen Sie sich nur den Text aus dem Django-Formular.
Schreiben Sie kurz if-else von Django Template
Ein Memo, dass ich das Pyramid Tutorial ausprobiert habe
Django Note 4
Eine Reihe von Amateur-Infrastrukturingenieuren, die Django mit Docker touching berühren: Ansicht, Vorlage, CSS
So zählen Sie die Anzahl der Elemente in Django und geben sie in die Vorlage aus
Django # 2 (Vorlage)
Die Geschichte von Django, wie er eine Bibliothek erstellt, die vielleicht etwas nützlicher ist
[Django] Erstellen Sie ein Formular, das automatisch die Adresse aus der Postleitzahl ausfüllt
Lassen Sie uns eine einfache Vorlage anzeigen, die ideal für den ersten Django ist
Django Note 1
Django Note 3
Django Note 2
Hinweise zum Anpassen der Diktatlistenklasse
Schreiben Sie eine Notiz über die Python-Version von Python Virtualenv
Versuchen Sie, die Dateiansicht von TortoiseHg ein wenig zu ändern
Finden des Beginns der Avenomics anhand der NT-Vergrößerung 2
Ein Hinweis zur neuen Stilbasisklasse
Führen Sie Python-Dateien mit Django aus HTML aus
Finden des Beginns der Avenomics anhand der NT-Vergrößerung 1
[Django] Drücken Sie einen Befehl, den Sie in dem Prozess ausgeführt haben, der auf manage.py ausgeführt wird.