Django将字符串保存到日期字段

时间:2011-11-01 11:41:11

标签: django datefield

在我的Django应用程序中,我有一个DateField(格式为'YYYY-MM-DD')。当我尝试保存字符串'2011-11-01'时,我没有收到任何错误,但是我的字段获得了NULL值。

我尝试使用日期时间和时间库中的strptime函数来执行此操作但具有相同的问题。基本上它都以一种形式发生

我有     

    if form.valid():
        form.cleaned_data['date'] = year + '-' + month + '-' day
        form.save()
    

2 个答案:

答案 0 :(得分:2)

表单验证的一部分包括清理数据。 cleaned_data dict包含python对象,而不是(字符串)post数据。

所以form.cleaned_data['data']需要是datetime对象(或者您需要在清理前编辑表单或发布数据)

答案 1 :(得分:0)

我认为你应该检查接受日期对象的模型对象并确认你没有将它设置为总是为空...实际上我认为用词不当,不是在视图或保存方法中而是在模型中应该采用日期对象的对象。也许您应该考虑在此处发布您的模型代码,以便我们看到。