Django新手在这里。我正在做Django教程,虽然我可以盲目地遵循代码,但我很困惑这是如何工作的。我得到{%code%}是允许我们在html中插入python代码的东西,我得不到的就是这行:
<li><a href="/polls/{{ question.id }}/">{{ question.question_text }}
我想解释一下变量的两个花括号如何转换为该变量的字符串表示。
我问,因为我尝试在我自己的解释器中进行类似的操作,并没有得到相同的结果。
{% 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 %}
答案 0 :(得分:2)
{{ variable }}
syntax in Django templates用作变量的占位符。
如果要查看它在控制台上的工作方式,请启动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!