From 5fd4c639d7c64572dd07dc31dcd627bed9469b05 Mon Sep 17 00:00:00 2001 From: Tom Christie Date: Tue, 21 Feb 2012 20:57:36 +0000 Subject: Merge master into develop --- djangorestframework/reverse.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 djangorestframework/reverse.py (limited to 'djangorestframework/reverse.py') diff --git a/djangorestframework/reverse.py b/djangorestframework/reverse.py new file mode 100644 index 00000000..ad06f966 --- /dev/null +++ b/djangorestframework/reverse.py @@ -0,0 +1,23 @@ +""" +Provide reverse functions that return fully qualified URLs +""" +from django.core.urlresolvers import reverse as django_reverse +from djangorestframework.compat import reverse_lazy as django_reverse_lazy + + +def reverse(viewname, request, *args, **kwargs): + """ + Do the same as `django.core.urlresolvers.reverse` but using + *request* to build a fully qualified URL. + """ + url = django_reverse(viewname, *args, **kwargs) + return request.build_absolute_uri(url) + + +def reverse_lazy(viewname, request, *args, **kwargs): + """ + Do the same as `django.core.urlresolvers.reverse_lazy` but using + *request* to build a fully qualified URL. + """ + url = django_reverse_lazy(viewname, *args, **kwargs) + return request.build_absolute_uri(url) -- cgit v1.2.3 From 1cde31c86d9423e9b7a7409c2ef2ba7c0500e47f Mon Sep 17 00:00:00 2001 From: Tom Christie Date: Sat, 25 Feb 2012 18:45:17 +0000 Subject: Massive merge --- djangorestframework/reverse.py | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) (limited to 'djangorestframework/reverse.py') diff --git a/djangorestframework/reverse.py b/djangorestframework/reverse.py index ad06f966..ba663f98 100644 --- a/djangorestframework/reverse.py +++ b/djangorestframework/reverse.py @@ -2,22 +2,19 @@ Provide reverse functions that return fully qualified URLs """ from django.core.urlresolvers import reverse as django_reverse -from djangorestframework.compat import reverse_lazy as django_reverse_lazy +from django.utils.functional import lazy -def reverse(viewname, request, *args, **kwargs): +def reverse(viewname, *args, **kwargs): """ - Do the same as `django.core.urlresolvers.reverse` but using - *request* to build a fully qualified URL. + Same as `django.core.urlresolvers.reverse`, but optionally takes a request + and returns a fully qualified URL, using the request to get the base URL. """ + request = kwargs.pop('request', None) url = django_reverse(viewname, *args, **kwargs) - return request.build_absolute_uri(url) + if request: + return request.build_absolute_uri(url) + return url -def reverse_lazy(viewname, request, *args, **kwargs): - """ - Do the same as `django.core.urlresolvers.reverse_lazy` but using - *request* to build a fully qualified URL. - """ - url = django_reverse_lazy(viewname, *args, **kwargs) - return request.build_absolute_uri(url) +reverse_lazy = lazy(reverse, str) -- cgit v1.2.3 From 87dae4d8549c02fa9a57adb3bb876d249dae1f79 Mon Sep 17 00:00:00 2001 From: Tom Christie Date: Thu, 20 Sep 2012 13:19:43 +0100 Subject: Remove old 'djangorestframework directories --- djangorestframework/reverse.py | 20 -------------------- 1 file changed, 20 deletions(-) delete mode 100644 djangorestframework/reverse.py (limited to 'djangorestframework/reverse.py') diff --git a/djangorestframework/reverse.py b/djangorestframework/reverse.py deleted file mode 100644 index ba663f98..00000000 --- a/djangorestframework/reverse.py +++ /dev/null @@ -1,20 +0,0 @@ -""" -Provide reverse functions that return fully qualified URLs -""" -from django.core.urlresolvers import reverse as django_reverse -from django.utils.functional import lazy - - -def reverse(viewname, *args, **kwargs): - """ - Same as `django.core.urlresolvers.reverse`, but optionally takes a request - and returns a fully qualified URL, using the request to get the base URL. - """ - request = kwargs.pop('request', None) - url = django_reverse(viewname, *args, **kwargs) - if request: - return request.build_absolute_uri(url) - return url - - -reverse_lazy = lazy(reverse, str) -- cgit v1.2.3