【发布时间】:2014-10-23 06:10:23
【问题描述】:
我无法理解我的应用正在发生的事情。 这就是 django 文档所说的。
- Django 按顺序运行每个 URL 模式,并在第一个匹配请求的 URL 时停止。
这是我的有效网址模式。
urlpatterns = patterns('',
#rosa
url(r'^league/(.+)/rose/$','fantacalcio.views.rose',name='rose'),
#league page
url(r'^league/(.+)/$', 'fantacalcio.views.league_home',name='league_home'),
)
这是我希望工作的 url 模式:
urlpatterns = patterns('',
#league page
url(r'^league/(.+)/$', 'fantacalcio.views.league_home',name='league_home'),
#rosa
url(r'^league/(.+)/rose/$','fantacalcio.views.rose',name='rose'),
)
但这反而给了我这个错误:
ValueError at /league/1/rose/
invalid literal for int() with base 10: '1/rose'
发生这种情况是因为/league/1/rose/ 停在league/1/,据我所知,不会移动到下一个网址。我不明白为什么,因为在 django 文档中我可以找到这个示例:
urlpatterns = patterns('',
url(r'^articles/2003/$', 'news.views.special_case_2003'),
url(r'^articles/(\d{4})/$', 'news.views.year_archive'),
url(r'^articles/(\d{4})/(\d{2})/$', 'news.views.month_archive'),
url(r'^articles/(\d{4})/(\d{2})/(\d+)/$', 'news.views.article_detail'),
)
我错过了什么?
【问题讨论】:
标签: python regex django url-pattern