【问题标题】:How to make spaces and indentation insignificant in Django blocktrans?如何在 Django blocktrans 中使空格和缩进无关紧要?
【发布时间】:2016-10-27 10:37:49
【问题描述】:

在某些 Django 模板中将以下 blocktrans 图像化:

{% blocktrans %}
    Some Text
{% endblocktrans %}

在模板中进行一些更改后,您可能希望将块缩进:

<div>
    {% blocktrans %}
        Some Text
    {% endblocktrans %}
</div>

这将更改您在翻译文件中的信息,并将它们标记为模糊。虽然从技术上讲,它是相同的消息(只是缩进不同)。

对这些消息进行“模糊处理”的整个过程既繁琐又容易出错。

到目前为止我尝试了什么:

  • 尽可能使用trans - 并不总是有效
  • 保持blocktrans 语句的初始缩进 - 难以维护
  • 试图在文档和其他资源中找到更多信息

有没有办法让blocktrans 中的缩进变得无关紧要?

【问题讨论】:

    标签: python django django-templates django-i18n


    【解决方案1】:

    根据文档here

    {% blocktrans %} 支持的另一个功能是修剪选项。这 选项将从开头和结尾删除换行符 {% blocktrans %} 标签的内容,替换任何空格 一行的开头和结尾,并使用 a 将所有行合并为一个 空格字符将它们分开。这对于缩进非常有用 {% blocktrans %} 标签的内容,没有缩进 字符最终出现在 PO 文件的相应条目中,其中 使翻译过程更容易。

    例如

    <div>
        {% blocktrans trimmed %}
            Some Text
        {% endblocktrans %}
    </div>
    

    将在您的 PO 文件中生成 "Some Text" 条目。

    【讨论】:

      猜你喜欢
      • 2013-09-01
      • 2011-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多