Django删除po文件中的翻译,字符串在mark_safe中 [英] Django removes translation in po file, string in mark_safe

查看:801
本文介绍了Django删除po文件中的翻译,字符串在mark_safe中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我尝试使用mark_safe()函数来翻译字符串:

I try to translate string, which is in mark_safe() function:

from django.utils.translation import ugettext as ug
...   
mark_safe('<div style="text-align:center"><a href="/calendar/" target="_blank" onclick="return open_popup(this); return false">%s</a></div>' % ug(u'show full calendar'))

不幸的是,当我运行django-admin.py makemessages -l pl时,它不包括.po文件中的这个字符串。我必须手动编辑它,写这行,然后它工作正常(字符串被翻译)。

Unfortunately, when I run run django-admin.py makemessages -l pl, it doesn't include this string in .po file. I have to edit it manually, write this line and then it works fine (the string is translated). It happens each time I run makemessages.

推荐答案

我认为问题是mark_safe和ug:

I think the problem was with mark_safe and ug:

from django.utils.translation import ugettext as ug
...   
mark_safe('<div style="text-align:center"><a href="/calendar/" target="_blank" onclick="return open_popup(this); return false">%s</a></div>' % ug(u'show full calendar'))

应该是:

from django.utils.translation import ugettext as ug
...   
mark_safe('<div style="text-align:center"><a href="/calendar/" target="_blank" onclick="return open_popup(this); return false">%s</a></div>') % ug(u'show full calendar')

注意括号。

这篇关于Django删除po文件中的翻译,字符串在mark_safe中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆