1
有什麼我不明白哪些與我的應用程序發生。 這是django文檔說的。Django的網址格局順序和正則表達式
- Django runs through each URL pattern, in order, and stops at the first one that matches the requested 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'),
)
這是我希望的工作我的網址模式:
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'),
)
我缺少什麼?