【发布时间】:2012-08-24 00:29:03
【问题描述】:
我对 Django 很陌生,我正在使用 i18n 开发一个项目,问题是我在模板文件中使用 .manage.py makemessages / compilemessages 翻译了一些变量,但是当我使用 {% trans "my string" %} 时,我得到了相同的结果"my string" 适用于所有语言。
我做错了什么?这是 views.py 和 idioma.html
的代码views.py:
#一些代码在这里...
def idioma(request):
output = _("Mensaje en espanol")
return render_to_response( 'idioma/idioma.html', { 'idioma' : output }, context_instance = RequestContext(request) )
idioma.html
{% load i18n %}
< form action="/i18n/setlang/" method="post">
{% csrf_token %}
< input name="next" type="hidden" value="{{ redirect_to }}" />
< select name="language" >
{% get_language_info_list for LANGUAGES as languages %}
{% for language in languages %}
< option value="{{ language.code }}">
{{ language.name_local }} ({{ language.code }})
< /option>
{% endfor %}
</select>
< input type="submit" value="Go" />
< /form>
La cadena es: {% trans idioma %}
{% trans "carro" %}
应用程序从 locale/path/to/language/ 中的 .po 和 .mo 文件转换 idioma 变量
但它不翻译 {% trans "carro" %} 字符串。
发生了什么事?
感谢您的帮助!!!!
【问题讨论】:
标签: django internationalization django-templates