对用于django的javascript的gettext支持的改进和补充
django-jsgettext的Python项目详细描述
这是对javascrtipt的django gettext实现的一个改进。
特点:
- 现在分析可翻译字符串的javascript步骤(使用下划线.template测试)
- 新的i18n视图更具扩展性(构建在cbv之上),它公开了djangojs gettext域 以及为js模板的翻译脚本生成的djsgetext域。另外表演是 使用此视图的缓存进行了改进(django视图不支持将其作为默认行为)。
它是怎么工作的?
djangomakemesages命令从*.js文件、^{tt3}生成djangojs域po文件$ 从.html文件(javascript模板)生成djettext域po文件,新视图将公开 javascript的两个gettext域。
注意
创建新视图是因为django的主视图是单体的,不允许公开与djangojs和django不同的域。
目前,只使用下划线模板进行测试。示例:
<div><%= gettext('sample message') %></div><div><%= ngettext('1 message', 'some messages', num) %></div><div><%= interpolate(gettext('sample %s'), [1]) %></div>
怎么用?
URL文件:
fromdjsgettext.viewsimportI18nurlpatterns=patterns('',url(r'^js-gettext/$',I18n.as_view()),)
从模板收集消息:
python manage.py jsgettext_makemessages