簡體   English   中英

Django網址匹配與urls.py中的規則不匹配

[英]Django url match not matching for rule in urls.py

urls.py

urlpatterns = patterns('',
    (r'^page/\w+/$', get_page),
    (r'', main),
)

調用: http:// localhost:8081 / page / cricket

調用main ,function而不是get_page

我該如何進行這項工作?

正則表達式是錯誤的。 它將匹配http:// localhost:8081 / page / cricket /http:// localhost:8081 / page / dog / 它與http:// localhost:8081 / page / cricket不匹配,因為正則表達式的末尾需要/。

根據您的評論和問題,您可能需要以下內容:

   (r'^page/(?P<loc>.*)', get_page)

這還會將page/之后的所有內容傳遞給命名參數“ loc”中的get_page函數。

如果您對特殊符號的含義有疑問,請參閱Python的正則表達式參考

^page/\\w+/$'是一個正則表達式,它匹配一個以page/開頭的字符串,后跟一個或多個字母,后跟/ ,並且沒有更多字符。

page/cricket包含前兩個元素,但不包含第三個元素,因此不匹配。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM