Django:resolve(request.path).app_name不返回应用程序名称

时间:2011-09-09 14:35:21

标签: django django-views

我正在尝试从视图或模板访问当前的应用名称。

在其他SO回答How to get an app name using python in djangoHow to get current application in Django中,我发现resolve(request.path).app_name应该返回当前的应用名称。但在我的情况下,它返回“无”。

我正在使用Django 1.3。

1 个答案:

答案 0 :(得分:7)

为了实现这一点,您必须在包含您的网址时传递app_name参数:

#urls.py
urlpatterns = patterns('',
    (r'^manufacturers/', include('manufacturers.urls', app_name='manufacturers')),
)


#shell output
In [1]: resolve('/manufacturers/my_manufacturers/').app_name
Out[1]: 'manufacturers'

更多信息:Defining URL namespaces