【问题标题】:Django: any use of blocktrans causes TemplateSyntaxErrorDjango:任何使用 blocktrans 都会导致 TemplateSyntaxError
【发布时间】:2011-06-22 16:00:38
【问题描述】:

使用 Django 1.2.1,任何使用 blocktrans 都会破坏我的模板。例如

{%blocktrans%}text{%endblocktrans%}

结果:

Django 版本:1.2.1 异常类型:TemplateSyntaxError 无效的块标签:'blocktrans'

删除 blacktrans 会导致代码正常工作。如果相关,Django 会在 GAE 上运行。

【问题讨论】:

    标签: django internationalization translation


    【解决方案1】:

    回答我自己的问题,我忘记了:

    {% load i18n %}
    

    在模板的顶部。这是使用 blocktrans 标签所必需的。

    编辑:请参阅下面的 orokusaki 改进的答案,为您的所有模板永久修复此问题。

    【讨论】:

      【解决方案2】:

      只需像这样将其添加到您的内置标签中即可:

      # in urls.py
      template.add_to_builtins('django.templatetags.i18n')
      

      我在多个模板中使用的任何标签,我只是加载到那里。

      【讨论】:

      • 其实我认为你的答案比我的好 - 更少的代码。使这个成为公认的答案。
      猜你喜欢
      • 2016-01-06
      • 1970-01-01
      • 2017-04-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-10
      • 1970-01-01
      相关资源
      最近更新 更多