Fixed #27374 -- Made JavaScriptCatalog respect the packages argument.
This commit is contained in:
parent
9b9c8c4a81
commit
6b5106b1ce
|
@ -356,7 +356,8 @@ class JavaScriptCatalog(View):
|
||||||
domain = kwargs.get('domain', self.domain)
|
domain = kwargs.get('domain', self.domain)
|
||||||
# If packages are not provided, default to all installed packages, as
|
# If packages are not provided, default to all installed packages, as
|
||||||
# DjangoTranslation without localedirs harvests them all.
|
# DjangoTranslation without localedirs harvests them all.
|
||||||
packages = kwargs.get('packages', '').split('+') or self.packages
|
packages = kwargs.get('packages', '')
|
||||||
|
packages = packages.split('+') if packages else self.packages
|
||||||
paths = self.get_paths(packages) if packages else None
|
paths = self.get_paths(packages) if packages else None
|
||||||
self.translation = DjangoTranslation(locale, domain=domain, localedirs=paths)
|
self.translation = DjangoTranslation(locale, domain=domain, localedirs=paths)
|
||||||
context = self.get_context_data(**kwargs)
|
context = self.get_context_data(**kwargs)
|
||||||
|
|
|
@ -17,3 +17,6 @@ Bugfixes
|
||||||
|
|
||||||
* Added ``model_name`` to the ``allow_migrate()`` calls in ``makemigrations``
|
* Added ``model_name`` to the ``allow_migrate()`` calls in ``makemigrations``
|
||||||
(:ticket:`27200`).
|
(:ticket:`27200`).
|
||||||
|
|
||||||
|
* Made the ``JavaScriptCatalog`` view respect the ``packages`` argument;
|
||||||
|
previously it was ignored (:ticket:`27374`).
|
||||||
|
|
|
@ -384,9 +384,21 @@ class JsI18NTestsMultiPackage(SimpleTestCase):
|
||||||
translations of multiple Python packages is requested. See #13388,
|
translations of multiple Python packages is requested. See #13388,
|
||||||
#3594 and #13514 for more details.
|
#3594 and #13514 for more details.
|
||||||
"""
|
"""
|
||||||
|
base_trans_string = 'il faut traduire cette cha\\u00eene de caract\\u00e8res de '
|
||||||
|
app1_trans_string = base_trans_string + 'app1'
|
||||||
|
app2_trans_string = base_trans_string + 'app2'
|
||||||
with self.settings(LANGUAGE_CODE='en-us'), override('fr'):
|
with self.settings(LANGUAGE_CODE='en-us'), override('fr'):
|
||||||
response = self.client.get('/jsi18n_multi_packages1/')
|
response = self.client.get('/jsi18n_multi_packages1/')
|
||||||
self.assertContains(response, 'il faut traduire cette cha\\u00eene de caract\\u00e8res de app1')
|
self.assertContains(response, app1_trans_string)
|
||||||
|
self.assertContains(response, app2_trans_string)
|
||||||
|
|
||||||
|
response = self.client.get('/jsi18n/app1/')
|
||||||
|
self.assertContains(response, app1_trans_string)
|
||||||
|
self.assertNotContains(response, app2_trans_string)
|
||||||
|
|
||||||
|
response = self.client.get('/jsi18n/app2/')
|
||||||
|
self.assertNotContains(response, app1_trans_string)
|
||||||
|
self.assertContains(response, app2_trans_string)
|
||||||
|
|
||||||
@modify_settings(INSTALLED_APPS={'append': ['view_tests.app3', 'view_tests.app4']})
|
@modify_settings(INSTALLED_APPS={'append': ['view_tests.app3', 'view_tests.app4']})
|
||||||
def test_i18n_different_non_english_languages(self):
|
def test_i18n_different_non_english_languages(self):
|
||||||
|
|
Loading…
Reference in New Issue