How to give package names to django javascript_catalog view?
From django documentation:
js_info_dict = { 'packages': ('your.app.package',), }
urlpatterns = patterns('', (r'^jsi18n/$', 'django.views.i18n.javascript_catalog', js_info_dict), )
Each string in packages should be in Python dotted-package syntax (the same format as the strings in INSTALLED_APPS) and should refer to a package that contains a locale directory.
It says "a package that contains a locale directory." , but i created translation files with djangoadmin.py makemessages -a and it creates locale just inside project directory. Not under any of my application directories. And i try to set packages as
js_info_dict = { 'packages': ('my_project_dir',), }
Apparently that's not working for me. Every string from django domain gets translated but i get an empty translation catalog in javascript from javascript_catalog view. What am i missing here开发者_Go百科?
First you need to be sure that your js_info_dict is like this:
js_info_dict = {
'domain': 'djangojs',
'packages': ('my_project_name',),
}
And as @daonb suggested, add 'my_project_name' to your INSTALLED_APPS in settings.py.
Make sure that you compile your messages like this:
django-admin.py makemessages -a -d djangojs
That's all!
I don't know why Django doesn't have that information into its documentation. I could find the solution with using these articles below:
http://www.aminche.com/blog/2010/07/06/playground-editor http://code.djangoproject.com/ticket/5494 http://osdir.com/ml/django-users/2010-04/msg00231.html
Try adding 'my_project_dir' to INSTALLED_APPS in settings.py
For others with my particular case, js messages are generated and compiled OK but not rendered in templates or pages when you use i18n language urls.
This is because javascript catalog should be added to i18n urls patterns, not to normal patterns.
urlpatterns += patterns('', (r'^jsi18n/$', 'django.views.i18n.javascript_catalog', js_info_dict), )
=>
urlpatterns += i18n_patterns('', (r'^jsi18n/$', 'django.views.i18n.javascript_catalog', js_info_dict), )
精彩评论