Django JavaScript翻译无效 [英] Django JavaScript translation not working

查看:593
本文介绍了Django JavaScript翻译无效的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我尝试遵循指南,但它是不够清楚。

I tried to follow the guide but it's not clear enough.


  1. 我将其添加到我的urls.py

  1. I added this to my urls.py

urlpatterns = patterns('',
    (r'^jsi18n/(?P<packages>\S+?)/$', 'django.views.i18n.javascript_catalog'),
)


  • 使用以下命令生成lang文件: / p>

  • Generated the lang files using this command:

    django-admin.py makemessages -d djangojs -l fr
    


  • root_folder / locale / fr / LC_MESSAGES 现在包含code> django.po & djangojs.po alert(gettext('this is to translate')); 在我的一个js文件在 djangojs.po 中拿起。

    root_folder/locale/fr/LC_MESSAGES now contain django.po & djangojs.po and alert(gettext('this is to be translated')); in one of my js files was picked up in djangojs.po.


    1. 我跑了code> django-admin.py compilemessages 并重新启动服务器。

    将其添加到我的base.html: p>

    Added this to my base.html:

    <script type="text/javascript" src="{% url 'django.views.i18n.javascript_catalog' 'locale' %}" >< /script >
    


    请注意,我添加了locale以避免

    Note that I added 'locale' to avoid the exception of not passing the package name when dynamically loading translations.


    1. 访问过 / jsi18n / locale / 从我的浏览器,我所得到的是Django翻译功能:

    1. Visited /jsi18n/locale/ from my browser and all I get is Django translation functions:

    /* gettext library */
    
    var catalog = new Array();
    
    function pluralidx(count) { return (count == 1) ? 0 : 1; }
    
    
    function gettext(msgid) {
    ....
    


    为什么这是要翻译不显示,哪个基础会显示特定的语言,而不用URL传递?

    Why 'this is to be translated' is not showing and on which basis it will show a specific language without passing it with the URL?

    推荐答案

    我不知道如何解决您的问题,但我可以告诉你,事情如何适用于我:

    I don't know exactly how to solve your problem, but I can tell you, how things work for me:

    locale 文件夹位于我的门票中。

    urls.py

    js_info_dict = {
        'domain': 'djangojs',
        'packages': ('tickets',),
    }
    
    urlpatterns = patterns('',
        (r'^jsi18n/$', 'django.views.i18n.javascript_catalog', js_info_dict),
        ...
    

    base .html

    base.html

    <script type="text/javascript" src="{% url django.views.i18n.javascript_catalog %}"></script>
    

    并创建消息文件:

    python -m django-admin makemessages -d djangojs -l fr
    python -m django-admin compilemessages
    

    希望您可以从中选择一些东西。

    Hopefully you can pick something up from this.

    这篇关于Django JavaScript翻译无效的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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