2012-03-15 66 views
0

我正在使用django-transmeta进行翻译。在下面的代码中,{{obj.description}}以django的当前语言返回描述。我需要的是,获取obj.description_ [lang_code]。我怎么才能得到它?如何在Django模板中获取不同语言代码的对象属性?

{% for lang in languages.all %} 
      <div id='{{ lang.code }}'> 
       <input type="text" name="description-{{lang.code}}" value='{{ obj.description }}'/> 
      </div> 
{% endfor %} 
+0

您想在模板中使用语言吗? – Ahsan 2012-03-15 12:46:13

+0

我想动态获取description_en,description_tr ...等。 – Burak 2012-03-15 12:47:04

+0

尝试'lang.0'代码和'lang.1'的名称或描述 – Ahsan 2012-03-15 12:51:34

回答

0

正如我从您的评论中了解到的,您想要获得for loop中特定语言的说明吗?

然后简单地以这种方式

{{ obj|get_lang_info:lang.code }} 

这里get_lang_infocustom filter就像是自定义过滤器。

+0

谢谢,它应该是这样的。但我有一个问题。有了这段代码,过滤器无法知道我是否得到'描述'。我还应该发送我获得'描述'或'名字'属性的信息。 – Burak 2012-03-15 13:55:11

+0

我可以将{{'description_'| add:lang.code}}分配给变量'attr'并像{{obj | get_lang_info:attr}}一样使用它吗? – Burak 2012-03-15 14:09:16

+0

我想你只需要描述给定的语言,而这个过滤器只会返回那种语言的描述。 – Ahsan 2012-03-15 14:13:08

相关问题