在django中的模板上为我们获取当前使用的URL在面包屑中?

时间:2011-01-15 16:18:05

标签: python django django-templates urlconf

我有一个应用程序,有两个目的 - 显示我公司的成员和中心。它们的工作方式完全相同,在过滤模型时保存不同的变量。问题是我无法将当前网址添加到模板中以便在我的自定义面包屑中使用。


我的主urls.py中有这个urlpattern:

# --- urls.py ---- 
url(r'^find-member/', include('company.directory.urls'), \
        {'which_app': 'members'}, name='find_member'),
url(r'^find-centre/', include('company.directory.urls'), \
        {'which_app': 'training'}, name='find_centre'),

链接到我的应用urls.py:

# ---- company/urls.py ----
from django.conf.urls.defaults import *
urlpatterns = patterns('company.directory.views',
    url(r'^$', 'index'),
    url(r'^(?P<slug>\w+)/$', 'index'),
)

在我的模板上我希望创建一个指向第一个urlpatten的链接,以便与我的自定义面包屑一起使用

<a href='/find-member/'>members</a>

<a href='/find-centre/'>Centre</a> 

基于我正在使用该应用的网址。

我的观点如下:

# ---- company/view.py ----
def index(request, which_app=None, slug=None):
    #r = reverse('' ,kwargs={'which_app'=training )
    s = "%s %s" % (which_app, slug)

    return render_to_response('directory/index.html', locals())

我想根据传递给def的which_app变量找到url。 我似乎无法使用resolve()reverse()。我可能做错了。我现在还没有真正展示的模板。

有人有什么建议吗?我喜欢一些建议。

提前致谢。

1 个答案:

答案 0 :(得分:3)

您不需要使用某个功能。您的视图将传递request对象,该对象具有属性path,该属性是被调用的路径。请参阅the request docs