Django的“解析”:获取URL名称,而不是view_function的
问题描述:
我的问题很简单,我有一个网址,我想解决这个问题,但得到的url
名称,而不是与它相关的视图功能...Django的“解析”:获取URL名称,而不是view_function的
例如......这就是URL配置:
urlpatterns = patterns('',
...
url('^/books/$', book_list, name="overview_books"),
...
)
这是我想什么:
>>> resolve('/books/')
'overview_books'
你知道任何方式做到这一点?
答
使用此片段(最初取自 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'
;)
答
在Django的1.3和较新的,你可以使用resolve功能:
from django.core.urlresolvers import resolve
print resolve('/books/').url_name