GetUsage / 2011年8月3日
匹配此网址我在urls.py(python& django)中使用了以下正则表达式
('^GetData/((0?[1-9]|[12][0-9]|3[01])[- /.](0?[1-9]|1[012])[- /.](19|20)?[0-9]{2})*',GetData)
并在views.py下面的方法中配置为接受日期
def GetDataData(request,sdate):
但是当我按照要求开火时
的http:// [IPADDRESS] / GetUsage / 2011年8月3日
我收到以下错误
GetData() takes exactly 2 arguments (5 given)
因为它是在单独的5个部分计算08-03-2011,但我想在单个参数中获取它,即在sdate中
答案 0 :(得分:2)
()
中的每个正则表达式组都作为参数传递给GetData()
。如果您不希望某些组生成组,但仍希望使用parens,请将(?:whatever)
用于非分组parens。
('^GetData/((?:0?[1-9]|[12][0-9]|3[01])[- /.](?:0?[1-9]|1[012])[- /.](?:19|20)?[0-9]{2})*',GetData)