2017-03-28 3 views
1

Django Neuling hier. Ich mache das Django-Tutorial und obwohl ich blind dem Code folgen konnte, bin ich einfach verwirrt, wie das funktioniert. Ich, dass der {% Code%} ist, was wir Python-Code in den HTML-Code einfügen kann, was ich nicht bekommen, ist die Zeile:Django Tutorial Teil 3 - Code Erläuterung

<li><a href="/polls/{{ question.id }}/">{{ question.question_text }} 

ich nur eine Erklärung, wie die haben möchte Zwei geschweifte Klammern mit einer Variablen werden in die Zeichenfolgendarstellung dieser Variablen übersetzt.

Ich frage, weil ich versuchte, eine ähnliche Operation im Interpreter allein und nicht die gleichen Ergebnisse zu erzielen.

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

Antwort

2

The {{ variable }} syntax in Django templates als Platzhalter für eine Variable verwendet.

Wenn Sie überprüfen wollen, wie es auf der Konsole funktioniert, starten Sie die django-Shell:

$ django-admin shell 
>>> from django.template import engines 
>>> 
>>> django_engine = engines['django'] 
>>> template = django_engine.from_string("Hello {{ name }}!") 
>>> context = {'name': 'John'} 
>>> template.render(context) 
Hello John!