summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTomáš Ehrlich <tomas.ehrlich@gmail.com>2015-01-26 11:09:50 +0100
committerTomáš Ehrlich <tomas.ehrlich@gmail.com>2015-01-26 17:58:55 +0100
commit511be35779a98427387d9aa4abacce01dedd7272 (patch)
tree95ea0307b3caee9fe337db62a990404820c63873
parentea0ea7859a224225950a4df7c23eb3a7d823ddcd (diff)
Fixed #24220 - Allowed lazy objects for success_url
-rw-r--r--django/views/generic/edit.py4
-rw-r--r--tests/generic_views/views.py4
2 files changed, 5 insertions, 3 deletions
diff --git a/django/views/generic/edit.py b/django/views/generic/edit.py
index 6f514c3a70..a4329a25b0 100644
--- a/django/views/generic/edit.py
+++ b/django/views/generic/edit.py
@@ -165,6 +165,8 @@ class ModelFormMixin(FormMixin, SingleObjectMixin):
Returns the supplied URL.
"""
if self.success_url:
+ # force_text can be removed with deprecation warning
+ self.success_url = force_text(self.success_url)
if PERCENT_PLACEHOLDER_REGEX.search(self.success_url):
warnings.warn(
"%()s placeholder style in success_url is deprecated. "
@@ -299,6 +301,8 @@ class DeletionMixin(object):
def get_success_url(self):
if self.success_url:
+ # force_text can be removed with deprecation warning
+ self.success_url = force_text(self.success_url)
if PERCENT_PLACEHOLDER_REGEX.search(self.success_url):
warnings.warn(
"%()s placeholder style in success_url is deprecated. "
diff --git a/tests/generic_views/views.py b/tests/generic_views/views.py
index 27ae5b2ca9..fe7fb88876 100644
--- a/tests/generic_views/views.py
+++ b/tests/generic_views/views.py
@@ -172,9 +172,7 @@ class SpecializedAuthorDelete(generic.DeleteView):
queryset = Author.objects.all()
template_name = 'generic_views/confirm_delete.html'
context_object_name = 'thingy'
-
- def get_success_url(self):
- return reverse('authors_list')
+ success_url = reverse_lazy('authors_list')
class BookConfig(object):