diff options
| author | Tomáš Ehrlich <tomas.ehrlich@gmail.com> | 2015-01-26 11:09:50 +0100 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2015-01-26 12:42:08 -0500 |
| commit | 5dff3513cc1bb998abe60f52269790268a74220c (patch) | |
| tree | 10879dcd47aa9c5b45e2cf07ee1f720cd59df80c | |
| parent | 2d990fb7fa6a04bb709aa9d7f687ec009c557c9e (diff) | |
[1.8.x] Fixed #24220 - Allowed lazy objects for success_url
Backport of 511be35779a98427387d9aa4abacce01dedd7272 from master
| -rw-r--r-- | django/views/generic/edit.py | 4 | ||||
| -rw-r--r-- | tests/generic_views/views.py | 4 |
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): |
