django v1.10的urls.py条目mysite.com:8000/index.html

时间:2016-10-15 21:28:34

标签: python html django

我在我的应用程序的urls.py文件中获取url条目时遇到了问题。 当某人输入mysite.com:8000/时,我希望它使用与mysite.com:8000/index.html相同的视图我可以使用url(r'^index.html$', views.index, name='index'),,当我在Chrome地址中输入mysite.com:8000/index.html时,视图会正确显示吧,或者我可以修剪urls.py条目和地址栏中的.html,这没关系,但我想用正则表达式,我可以显示/或{{1 }}

很多谷歌搜索还没有让我回答......

编辑: 更新基于@moses:

index*

现在我得到:“异常值:index()只需要1个参数(给定2个)”

1 个答案:

答案 0 :(得分:1)

您可以使用以下正则表达式模式,该模式匹配网址中{0}的{1}}的0或1次重​​复,即'index.html'^$

r'^index.html$'

你的Django网址模式变为:

>>> re.match(r'^(?:index\.html)?$', 'index.html')
<_sre.SRE_Match object; span=(0, 10), match='index.html'>
>>> re.match(r'^(?:index\.html)?$', '')
<_sre.SRE_Match object; span=(0, 0), match=''>
>>> re.match(r'^(?:index\.html)?$', 'login')
>>>

请参阅演示:https://regex101.com/r/MVCPDN/2