我尝试着按照指南操作,但是不够清晰明了。
我把这个添加到我的urls.py文件中:
urlpatterns = patterns('', (r'^jsi18n/(?P<packages>\S+?)/$', 'django.views.i18n.javascript_catalog'), )
使用以下命令生成语言文件:
django-admin.py makemessages -d djangojs -l fr
root_folder/locale/fr/LC_MESSAGES
现在包含django.po
和djangojs.po
,并且我的一个js文件中的alert(gettext('this is to be translated'));
被djangojs.po
捕获。
我运行了
django-admin.py compilemessages
命令并重启了服务器。在我的 base.html 文件中添加了以下内容:
<script type="text/javascript" src="{% url 'django.views.i18n.javascript_catalog' 'locale' %}" >< /script >
我从浏览器访问了
/jsi18n/locale/
,但是我只得到了Django翻译函数:/* gettext library */ var catalog = new Array(); function pluralidx(count) { return (count == 1) ? 0 : 1; } function gettext(msgid) { ....
i18n_patterns
时发生(有人可以确认或否认吗?) - bruno desthuilliers