【问题标题】:django javascript localization issuedjango javascript本地化问题
【发布时间】:2012-10-29 02:33:11
【问题描述】:

我目前正在为我的项目使用 django 1.3。 我正在对项目进行本地化。 我能够本地化 python 代码和模板,但我在 javascript 本地化方面遇到了问题。 我收到 TemplateSyntaxError 消息,说“渲染时捕获 NoReverseMatch:''django.views.i18n.javascript_catalog'' 的反向参数'()'和关键字参数'{}'未找到。” 我将部分 url.py 和模板 home.html 代码放在下面。 我使用 python manage.py shell 检查了 django.views.i18n.javascript_catalog,这很好。

你能告诉我我做错了什么吗?

模板中的url函数不应该是http:///jsi18n/吗?

谢谢!

最小

=== urls.py ===

js_info_dict = {
    'domain': 'djangojs',
    'packages': ('messages',),
}

urlpatterns = patterns('',

    url(r'^$', 'messages.views.home', name='home'),
    url(r'^messages/$', include('messages.urls')),

    # Localization
    url(r'^i18n/', include('django.conf.urls.i18n')),
    url(r'^jsi18n/$', 'django.views.i18n.javascript_catalog', js_info_dict),
)

=== 结束 ===

=== home.html ===

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

=== 结束 ===

【问题讨论】:

    标签: django


    【解决方案1】:

    我终于找到了这个错误的原因。 该错误与本地化无关。 如果你改变了

    <script... {% url 'django.views.i18n.javascript_catalog' %}"></script>
    

    <script... {% url django.views.i18n.javascript_catalog %}"></script>
    

    错误消失了。

    注意urls.py中是

    url(r'^jsi18n/$', 'django.views.i18n.javascript_catalog', js_info_dict),
    

    简而言之,在 html 模板文件中,django.views.i18n.javascript_catalog 周围没有引号,而 urls.py 文件中,django.views.i18n.javascript_catalog 周围没有引号。 在此之后,我能够让 javascript 翻译工作。

    最小

    【讨论】:

    • 这取决于您是否在模板顶部写了{% load url from future %}。我建议包括那个 sn-p 并引用你所有的视图路径。请参阅url tag 文档下的“转发兼容性”侧边栏。
    【解决方案2】:

    有同样的错误,但发现我有这个:

    url(r'^jsi18n/$', 'django.views.i18n.javascript_catalog',js_info_dict),
    url(r'^i18n/', include('django.conf.urls.i18n')),
    

    而不是这个:

    url(r'^i18n/', include('django.conf.urls.i18n')),
    url(r'^jsi18n/$', 'django.views.i18n.javascript_catalog', js_info_dict),
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-12-16
      • 2012-03-26
      • 1970-01-01
      • 2011-02-18
      • 2011-07-11
      • 2011-02-23
      相关资源
      最近更新 更多