2013-03-14 191 views
0

Django的工作,我已經得到了下面的表格優雅的方式來轉換日期

class ReportDataForm(forms.Form): 
start_date = forms.DateField(input_formats=settings.DATE_INPUT_FORMATS) 
end_date = forms.DateField(input_formats=settings.DATE_INPUT_FORMATS) 

我的日期字段具有以下格式:「MM/DD/YY」,它匹配的DATE_INPUT_FORMATS之一

這些日期時間字段通過GET請求提交併用於查詢。 現在,我認爲相貌醜陋:

if request.method == 'GET': 
    form = ReportDataForm(request.GET) 
    context={'form':form} 
    if form.is_valid(): 
     start_date = datetime.strptime("%m/%d/%y") 
     end_date = datetime.strptime("%m/%d/%y") 
     report = Mymodel.objects.filter(date__gte=start_date)\ 
           .filter(date__lte=end_date) 

有什麼辦法避免這種轉換或在某處驗證做到這一點,因爲它無關的觀點的邏輯?

回答

1

它已經爲你完成了。只需訪問form.cleaned_data['start_date']

+0

哇!這很快,謝謝! – ProfHase85 2013-03-14 16:02:47