Django:在模板中取消注释

Pet*_*sen 1 django

模板中的行如何被取消注释或以其他方式被禁用(除了删除行)?

例如,如果文件"base_weblog.html"包含:

{%load ProgramVersion%} {%render_month_links%}

如何在运行时隐藏此行?

这不起作用(例如,如果ProgramVersion不是有效的标记库,则为TemplateSyntaxError - 这就是我想要取消注释的原因):

{%if false%}

{%load ProgramVersion%} {%render_month_links%}

{% 万一 %}

更新1.这解决了它:

{%comment%}

{%load ProgramVersion%} {%render_month_links%}

{%endcomment%}

只是好奇:为什么在第一种情况下评估"加载ProgramVersion"而不是在第二种情况下评估?对于可能嵌套的控制结构进行优化是否太复杂(并且注释不能嵌套)?请注意,上面的"if false"应该是"if false",但它没有区别.使用不存在的变量,例如XYZ,仍然会评估负载.

Grz*_*zki 8

尝试:

{% comment %} .... {% endcomment %}
Run Code Online (Sandbox Code Playgroud)

请参阅Django模板文档.


And*_*son 5

声明为此类的评论不会显示给用户.

{%comment%}您的评论文字{%endcomment%}