Dies ist die Ausgabeseite des Ergebnisses des Lernens über Django bei Udemy. Dies ist eine Fortsetzung des vorherigen Artikels . Dieses Mal werde ich versuchen, Render zu verwenden, eine der Funktionen von Django.
urls.py ulrs.py ist das gleiche wie beim letzten Mal.
first\myapp\urls.py
from django.urls import path
from . import views
app_name = 'myapp'
urlpatterns = [
path('', views.index, name='index'),
]
views.py Ändern Sie views.py wie folgt.
first\myapp\views.py
from django.shortcuts import render
def index(request):
context = {
'names':['Suzuki','Sato','Takahashi'],
'message':'Hallo.',
}
return render(request, 'myapp/index.html', context)
Importieren Sie zuerst das Rendering mit aus django.shortcuts import render
.
Bearbeiten Sie als Nächstes den Def-Index. Fügen Sie dem def-Index ein Wörterbuch mit dem Namen context hinzu. Der Kontext hat einen Schlüssel namens Namen und Nachricht. Registrieren wir mehrere Werte für Namen.
Übergeben Sie den Kontext schließlich mit return render (request, 'myapp / index.html', context)
an myapp / index.html.
Der Kontextschlüssel und der Wert sind jetzt in myapp / index.html verfügbar.
In Django wird der Speicherort der Vorlagendatei festgelegt.
Es ist ziemlich verwirrend, wenn dieser Bereich anfängt, Django zu lernen. Zusammenfassend befindet sich myapp / index.html am folgenden Speicherort. first\myapp\templates\myapp\index.html
Ich werde es Schritt für Schritt im Detail erklären.
index.html Beschreiben Sie Folgendes in index.html.
first\myapp\templates\myapp\index.html
<p>{{ names.0 }}Herr.{{ message }}</p>
<p>{{ names.1 }}Herr.{{ message }}</p>
<p>{{ names.2 }}Herr.{{ message }}</p>
<hr>
{% for name in names %}
<p>{{ name }}Herr.{{ message }}</p>
{% endfor %}
Die Beschreibung in Djangos HTML-Datei scheint Python zu ähneln, die Notation unterscheidet sich jedoch geringfügig.
Schließen Sie Variablen in {{}}
und Programmanweisungen wie in {%%}
ein.
Da es in HTML kein Konzept für Einrückungen gibt, muss es am Ende von for und if explizit mit {% endfor%}
ausgedrückt werden.
Wenn Sie an Python gewöhnt sind, kann es ziemlich nervig sein, aber Sie müssen sich daran gewöhnen.
Ich werde aus den ersten drei Zeilen erklären.
Drei Werte wurden in den Namen des Kontexts registriert.
names.0
bedeutet, den ersten Wert von Namen zu ziehen.
names.1
ist der zweite Wert für Namen.
Es ist kein Index erforderlich, da message
nur einen Wert hat.
Als nächstes werde ich die letzten drei Zeilen erklären.
Rufen Sie mit {% für Name in Namen%}
die Werte einzeln aus Namen ab.
Dieser Bereich hat die gleiche Notation wie Python und ist daher leicht zu verstehen.
Vergessen Sie nicht, es am Ende mit {% endfor%}
zu schließen.
Starten wir den Entwicklungsserver mit py manage.py runserver und greifen auf index.html zu. Wenn es wie folgt angezeigt wird, gibt es kein Problem. Die oberen drei Zeilen sind die Wertanzeige mit Indizes, und die unteren drei Zeilen sind die Wertanzeige mit Minuten.
https://qiita.com/sw1394/items/4bc6349dd3a32938dcaf
Recommended Posts