优雅转换d的方法

2024-06-28 18:50:27 发布

您现在位置:Python中文网/ 问答频道 /正文

与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”,它与日期输入格式之一匹配

这些datetime字段是通过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)

有没有办法避免这种转换,或者在验证器的某个地方进行转换,因为它与视图逻辑无关?你知道吗


Tags: forminputgetdatetimedatesettingsformsstart