django - urls.py如何区分几乎相同的url

don*_*yor 1 python django

我在urls.py中有这些网址:

这个:

url(r'^bundesland/(?P<bundesland>.+)/$','home.views.func_a'),
Run Code Online (Sandbox Code Playgroud)

还有这个:

url(r'^bundesland/(?P<bundesland>.+)/stadt/(?P<stadt>)/$','home.views.func_b'),
Run Code Online (Sandbox Code Playgroud)

我有两个网址来到urls.py:

1)/bundesland/bavaria/应该去func_a
2)/bundesland/bavaria/stadt/munich/应该去func_b

但网址2)/bundesland/bavaria/stadt/munich/仍然是,func_a而不是func_b.为什么是这样?

我非常需要帮助.

Bre*_*rne 5

而不是.+(将所有字符带到最后),使用\w+:

url(r'^bundesland/(?P<bundesland>\w+)/$','home.views.func_a'),
Run Code Online (Sandbox Code Playgroud)

这将在斜杠之间使用一个或多个字母.