diff options
| author | Simon Meers <simon@simonmeers.com> | 2012-08-03 10:03:52 +1000 |
|---|---|---|
| committer | Simon Meers <simon@simonmeers.com> | 2012-08-04 20:57:12 +1000 |
| commit | 10f979fd92000de1ac9713351f5cb749e2cbca03 (patch) | |
| tree | 31c737f7bbea8689237743b6223aa89529ec0445 | |
| parent | b496be331c19f41bee3a8f6c79de0722f91d6662 (diff) | |
Fixed #18700 -- Added URL reversal for i18n set_language view.
| -rw-r--r-- | django/conf/urls/i18n.py | 4 | ||||
| -rw-r--r-- | docs/topics/i18n/translation.txt | 2 | ||||
| -rw-r--r-- | tests/regressiontests/views/tests/i18n.py | 4 |
3 files changed, 7 insertions, 3 deletions
diff --git a/django/conf/urls/i18n.py b/django/conf/urls/i18n.py index 6e56af8271..426c2b2d30 100644 --- a/django/conf/urls/i18n.py +++ b/django/conf/urls/i18n.py @@ -1,5 +1,5 @@ from django.conf import settings -from django.conf.urls import patterns +from django.conf.urls import patterns, url from django.core.urlresolvers import LocaleRegexURLResolver def i18n_patterns(prefix, *args): @@ -16,5 +16,5 @@ def i18n_patterns(prefix, *args): urlpatterns = patterns('', - (r'^setlang/$', 'django.views.i18n.set_language'), + url(r'^setlang/$', 'django.views.i18n.set_language', name='set_language'), ) diff --git a/docs/topics/i18n/translation.txt b/docs/topics/i18n/translation.txt index 988948e259..bdbb04823d 100644 --- a/docs/topics/i18n/translation.txt +++ b/docs/topics/i18n/translation.txt @@ -1272,7 +1272,7 @@ Here's example HTML template code: .. code-block:: html+django - <form action="/i18n/setlang/" method="post"> + <form action="{% url 'set_language' %}" method="post"> {% csrf_token %} <input name="next" type="hidden" value="{{ redirect_to }}" /> <select name="language"> diff --git a/tests/regressiontests/views/tests/i18n.py b/tests/regressiontests/views/tests/i18n.py index 9993ae959c..cb580267d2 100644 --- a/tests/regressiontests/views/tests/i18n.py +++ b/tests/regressiontests/views/tests/i18n.py @@ -5,6 +5,7 @@ import gettext from os import path from django.conf import settings +from django.core.urlresolvers import reverse from django.test import TestCase from django.utils.translation import override, activate, get_language from django.utils.text import javascript_quote @@ -23,6 +24,9 @@ class I18NTests(TestCase): self.assertRedirects(response, 'http://testserver/views/') self.assertEqual(self.client.session['django_language'], lang_code) + def test_setlang_reversal(self): + self.assertEqual(reverse('set_language'), '/views/i18n/setlang/') + def test_jsi18n(self): """The javascript_catalog can be deployed with language settings""" saved_lang = get_language() |
