2013-03-14 113 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