Django:urls.py中的参数+日期命名组
我在我的urls.py文件里写了这个:
---urls.py---
urlpatterns = patterns('',
(r'^queryinfo3/(.*)/(.*)/(?P<year>\d{4})-(?P<month>\d{2})-(?P<day>\d{2})/$', queryInfo3),
上面的代码应该可以匹配这样的请求:
http://localhost:8081/queryinfo3/text1/text2/2012-02-07/
在我的views.py文件里,我有这个处理方法:
def queryInfo3(request, sname, urlkey, year=None, month=None, day=None):
return HttpResponse("something")
可惜的是,我遇到了这个类型错误:
queryInfo3() takes at least 3 arguments (4 given)
我哪里做错了呢?
提前谢谢大家!
更新
我试了这个:
def queryInfo3(request, sname, urlkey, year, month, day):
...
但是我还是遇到了类型错误:
queryInfo3() takes exactly 6 arguments (4 given)
1 个回答
0
你需要两个网址,因为其他三个值都是空的,也就是没有内容。
(r'^queryinfo3/(\w+)/(\w+)/(?P<year>\d{4})/(?P<month>\d{1,2})/(?P<day>\d{1,2})/$', queryInfo3),
测试:
localhost:8081/queryinfo3/text1/text2/2012/02/07
或者
(r'^queryinfo3/(\w+)/(\w+)/(?P<year>\d{4})-(?P<month>\d{1,2})-(?P<day>\d{1,2})/$', queryInfo3),
测试:
localhost:8081/queryinfo3/text1/text2/2012-02-07