Django ‘resolver’: obtener el nombre de la URL en lugar de la función de vista

Mi problema es simple, tengo un url, me gustaría resolverlo, pero obtener el nombre del url lugar de la función de vista asociada con él …

Por ejemplo … esto es urlconf:

 urlpatterns = patterns('', ... url('^/books/$', book_list, name="overview_books"), ... ) 

Y esto es lo que me gustaría:

 >>> resolve('/books/') 'overview_books' 

¿Conoces alguna forma de hacer esto?

Use este fragmento de código (tomado originalmente de djangosnippets.org/snippets/1378/ );

 >>> from my_projects.tools import resolve_to_name >>> print resolve_to_name('/some/url') 'app.views.view' >>> print resolve_to_name('/some/other/url') 'this_is_a_named_view' 

😉

En Django 1.3 y más reciente puede usar la función de resolución :

 from django.core.urlresolvers import resolve print resolve('/books/').url_name