如何将url作为参数传递给Django中的处理程序?

时间:2010-01-28 19:02:06

标签: django url parameters

我目前正在开发的项目有一种代理功能,用户可以通过该网站浏览到另一个URL。我希望URL可以是这样的:

  

www.mydomain.com/browser/ [此处为URL]

但是,我无法将URL作为参数捕获。我认为我对正则表达式的经验不足使我失败了:(我的URL conf看起来像这样:

urlpatterns += patterns('',
    url(r'^browser/(?P<url>\w+)/$', browser_proxy, name='browser_proxy'),
)

我认为\w+不足以捕获任意网址。任何人都知道我应该在这里使用什么来捕获URL作为这样的参数?

感谢您的帮助。

1 个答案:

答案 0 :(得分:4)

\w表示“单词”字符,即字母数字和下划线。它等同于集合[a-zA-Z0-9_]。您可以将任何字符与句点匹配。即:

urlpatterns += patterns('',
   url(r'^browser/(?P.+)/$', browser_proxy, name='browser_proxy'),
)