[PYTHON] Entwerfen von URL-Schemata und Erstellen von Vorlagen in Django

Ich habe vom Entwurf des URL-Schemas in Django bis zu dem Teil zusammengefasst, der in der Vorlage angezeigt werden soll.

Geben Sie das URL-Schema mit regulärem Ausdruck an

urls.py


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

def index(request):
    latest_test_list = Test.objects.all().order_by('-pub_date')[:5]
    t = loader.get_template('test/index.html')
    c = Context({
        'latest_test_list': latest_test_list,
    })
    return HttpResponse(t.render(c))

Entwerfen Sie eine URL mit regulären Ausdrücken in urls.py.

Als Denkweise Django testet vom ersten Taple bis die angeforderte URL mit dem kanonischen Ausdruck im Tapple übereinstimmt.

Wenn ein übereinstimmender kanonischer Ausdruck gefunden wird, ruft Django die im entsprechenden Taple angegebene Rückruffunktion auf. Übergeben Sie das HttpRequest-Objekt als erstes Argument an die Rückruffunktion. Übergeben Sie außerdem im regulären Ausdruck "den erfassten Wert als Schlüsselwortargument. Wenn ein optionales Wörterbuchobjekt (das das dritte Element des Taples ist) angegeben wird, wird sein Inhalt auch als zusätzliche Schlüsselwortargumente übergeben.

Geben Sie das Verzeichnis an, in dem nach Vorlage gesucht werden soll

Legen Sie das Verzeichnis fest, das das obige URL-Schema in settings.py angibt

setting.py


TEMPLATE_DIRS = (
    '/Pfad zu dem Verzeichnis, in dem sich die Vorlage befindet/', #Sie müssen sich an Ihre Umgebung anpassen.
)

Legen Sie die Vorlage und den Kontext fest, der in der Ansicht übergeben werden soll

Die URL-Einstellung ist bis zu dem oben genannten abgeschlossen, aber die der URL entsprechende Methode ist nicht definiert. Stellen Sie es in view.py ein.

from django.shortcuts import render_to_response
from polls.models import Test

def index(request):
    latest_test_list = Test.objects.all().order_by('-pub_date')[:5]
    return render_to_response('test/index.html',
                              {'latest_test_list': latest_test_list})

Stellen Sie abschließend die Vorlage ein

Geben Sie abschließend das Frontend und das Design in der Vorlage an. Zeigen Sie den übergebenen Kontext an.

templete.html


{% if latest_test_list %}
    <ul>
    {% for test in latest_test_list %}
        <li><a href="/test/{{ test.id }}/">{{ test.text }}</a></li>
    {% endfor %}
    </ul>
{% else %}
    <p>There is no test.</p>
{% endif %}

Recommended Posts

Entwerfen von URL-Schemata und Erstellen von Vorlagen in Django
PHP var_dump-like in Django-Vorlage
Behandeln Sie Konstanten in Django-Vorlagen
Hinweise zum Erstellen statischer Dateien mit Django
Geben Sie die Ansichts-URL in der Django-Vorlage an
Erstellen Sie erste Einstellungen und Mitarbeiter-Apps in Django
GAE & GCS & Django mit leerer Bild-URL
Modell in Django
Form in Django
Django URL-Einstellungen
Code, der die Ansichtsnamen von URL-Resolvern in Django auflistet
Wie man Decorator in Django benutzt und wie man es macht
Kleine und raffinierte Vim-Plugins, die in Python / Django nützlich sind