aboutsummaryrefslogtreecommitdiffstats
path: root/djangorestframework/breadcrumbs.py
diff options
context:
space:
mode:
authorTom Christie2011-04-29 14:32:56 +0100
committerTom Christie2011-04-29 14:32:56 +0100
commitb358fbdbe9cbd4ce644c4b2c7b9b4cec0811e14e (patch)
tree601e5576995809b74f914cafcee8a7a8cd9c6937 /djangorestframework/breadcrumbs.py
parent93aa065fa92f64472a3ee80564020a81776be742 (diff)
downloaddjango-rest-framework-b358fbdbe9cbd4ce644c4b2c7b9b4cec0811e14e.tar.bz2
More refactoring - move various less core stuff into utils etc
Diffstat (limited to 'djangorestframework/breadcrumbs.py')
-rw-r--r--djangorestframework/breadcrumbs.py31
1 files changed, 0 insertions, 31 deletions
diff --git a/djangorestframework/breadcrumbs.py b/djangorestframework/breadcrumbs.py
deleted file mode 100644
index ba779dd0..00000000
--- a/djangorestframework/breadcrumbs.py
+++ /dev/null
@@ -1,31 +0,0 @@
-from django.core.urlresolvers import resolve
-from djangorestframework.description import get_name
-
-def get_breadcrumbs(url):
- """Given a url returns a list of breadcrumbs, which are each a tuple of (name, url)."""
-
- def breadcrumbs_recursive(url, breadcrumbs_list):
- """Add tuples of (name, url) to the breadcrumbs list, progressively chomping off parts of the url."""
-
- # This is just like compsci 101 all over again...
- try:
- (view, unused_args, unused_kwargs) = resolve(url)
- except:
- pass
- else:
- if callable(view):
- breadcrumbs_list.insert(0, (get_name(view), url))
-
- if url == '':
- # All done
- return breadcrumbs_list
-
- elif url.endswith('/'):
- # Drop trailing slash off the end and continue to try to resolve more breadcrumbs
- return breadcrumbs_recursive(url.rstrip('/'), breadcrumbs_list)
-
- # Drop trailing non-slash off the end and continue to try to resolve more breadcrumbs
- return breadcrumbs_recursive(url[:url.rfind('/') + 1], breadcrumbs_list)
-
- return breadcrumbs_recursive(url, [])
-