0

私は 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")

残念ながら、私はこの TypeError を取得しています:

queryInfo3() takes at least 3 arguments (4 given)

私は何を間違っていますか?

前もって感謝します!

更新 私はこれを試しました:

def queryInfo3(request, sname, urlkey, year, month, day):
     ...

しかし、私はまだ TypeError を取得しています:

queryInfo3() takes exactly 6 arguments (4 given)
4

1 に答える 1

0

他の 3 つの値は None に等しいため、そのためには 2 つの URL が必要です。

(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
于 2013-02-07T12:57:05.373 に答える