Django:一次调用使用两个url模式/函数

时间:2012-10-17 20:20:15

标签: django django-urls

我有以下urlpatterns,按此顺序:

 url(r'^([^//]*)/forum/topics/$', showThreadTopics),
 url(r'^([^//]*)/$', redirectFrontPage)

我去:

http://localhost:8000/xxx/forum/topics/

调用showThreadTopics并正确显示页面。但是,我碰巧在redirectFrontPage中设置了断点,并且看到此函数也被调用。这种情况每次都会发生,我可以从中打印语句。它对最终结果没有影响,并且在查看Firebug时不会导致任何明显的网络活动。 showThreadTopics没有什么特别之处。它只是获取一些数据并呈现它们。实际上,使用我的任何网址调用redirectFrontPage。

怎么可能呢?我该如何避免呢?我有最后一个urlpattern,因为如果有人输入

www.mysite.com/users_site_name

然后我想将其重定向到

www.mysite.com/users_site_name/home

1 个答案:

答案 0 :(得分:0)

我猜测页面上的静态引用,如CSS,JS或图像文件,正在被该URL拦截,因为它捕获了之前未被其他任何东西捕获的所有内容。它甚至可能是浏览器对图标的自动请求。