Django trans问题 - 不在100%的情况下工作

时间:2011-02-09 21:00:10

标签: python django

我在使用django的{%trans%}模板功能时遇到了问题。我在我的消息文件中翻译了值,并在某些情况下进行了翻译。但不是全部。

我正在尝试调试此问题。我有一个像这样的代码块 - 我在迭代表单的字段并输出它们:

<tr>
        <td>{{ hdr_data|safe }} {% trans row_field.label_tag %}</td>
        <td>{{ row_field }}</td>
        <td>{{ row_field.errors}}</td>
    </tr>

如果我们想要打印_row_field.label_tag_为字符串“ABC”,我已将其翻译为“ZXF”,上面的代码仍会打印“ABC”。但是,如果我这样做:

<tr>
        <td>{{ hdr_data|safe }} {% trans 'ABC' %}</td>
        <td>{{ row_field }}</td>
        <td>{{ row_field.errors}}</td>
    </tr>

翻译还可以 - 我得到“ZXF”。

我一直在尝试检查label_tag有什么问题,它实际上就是这个字符串:

<label for="id_abc">ABC</label>

不应该只是“ABC”吗?这不是我的问题的原因吗?如果是这样,为什么有时它会起作用,有时候不行?

我的django版本是1.2.1。

1 个答案:

答案 0 :(得分:1)

field.label_tag将您的标签包裹在<label> tag内。要获取文字,请使用field.label。这解释为here