2012-09-24 4 views
0

Possible Duplicate:
Capturing url parameters in request.GETURL에 오프셋 값을 인출 할 수 없습니다 (장고)

다음과 같은 내가 장고를 사용하여 내 웹 사이트의 상세 페이지를 디자인하고, 주제 URL을 설정하고 있습니다 :

(r'd/\d+/$', 'xiangwww.detail.views.detail'), 

을 두 번째 인수는 주제의 ID입니다. 그러나 나는 그것이 장고 도서의 안내에 따라 인출 할 때 :

def detail(request,offset): 
    print offset 
    return render_to_response('detail.html') 

페이지 "로컬 호스트 : 8000/D/1 /" 세부() 정확히 2 개 인자를 (1 주어진)

소요에이 형식 오류를 보여줍니다

Django가 내 views.py 파일에서 오프셋 된 부분을 인식 할 수없는 것 같습니다. 해결 방법은 무엇입니까?

답변

4

당신은 정규 표현식 그룹에 넣어, 캡처 수를 필요

(r'd/(\d+)/$', 'xiangwww.detail.views.detail'), 

(...) 그룹이 없으면, 장고는 캡처 된 번호에 대해 알고하지 않고보기에 전달할 수 없습니다. URL Dispatch documentation :

To capture a value from the URL, just put parenthesis around it.

+0

오프셋으로 두 개 이상의 인수를 전달할 가능성이 있습니까? –

+0

물론, 더 많은'(..)'그룹을 생성하십시오; 링크 된 문서에는 여러 캡처 그룹을 사용하는 몇 가지 예제가 있습니다. –

0

매개 변수로 오프셋을 허용하도록 URL을 변경해야합니다. 예 :

(r'd/(?P<offset>\d+/)$', 'xiangwww.detail.views.detail'), 
관련 문제