2012-06-07 5 views
1

나는 일이 간단한 코드를 만들려고 노력 해요 :SelectDateWidget으로 날짜를 전달하는 방법은 무엇입니까?

것 같습니다

{% extends "base.html" %} 

{% block content %} 
    <form method="get"> 
    <table> 
     {{ form.as_table }} 
     <tr><td><input type="submit"></td><td></td></tr> 
    </table> 
    </form> 
    <br/> 
    <b>Start date</b>: {{ start }}<br /> 
    <b>End date</b>: {{ end }}<br /> 
    <b>Test var:</b> {{ test_var }} 


{% endblock %} 

test.html를

class TestForm(forms.Form): 
    start_date = forms.DateField(widget=SelectDateWidget()) 
    end_date = forms.DateField(widget=SelectDateWidget()) 

views.py

def test(request): 
    form = TestForm(request.GET) 
    if form.is_valid(): 
     start = request.GET.get('start_date') 
     end = request.GET.get('end_date') 
     test_var = 'Hello' 

    return render(request, 'schedule/test.html', locals()) 

forms.py SelectDateWidget은 {{start}} 및 {{end}} 변수를 올바르게 설정하지 않습니다 :

내가 잘못 뭐하는 거지

screenshot


?

답변

3

양식 값 청소 데이터를 통해 액세스 시도 :

start = form.cleaned_data.get('start_date') 
end = form.cleaned_data.get('end_date') 

당신이 그들이 일, 월, 연도에 의해 전달되는 GET 매개 변수를 원하는 경우 :

인쇄 : request.GET 당신에게 줄 것이다 :

<QueryDict: {u'end_date_day': [u'4'], u'start_date_day': [u'1'], u'end_date_year': [u'2012'], u'end_date_month': [u'3'], u'start_date_month': [u'2'], u'start_date_year': [u'2012']}> 
+0

감사합니다. 정확하게 필요한 부분입니다. –

관련 문제