2

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

我尝试使用 datetime 和 time 库中的 strptime 函数来做到这一点,但遇到了同样的问题。基本上这一切都以一种形式发生

我有

    如果 form.valid():
        form.cleaned_data['date'] = 年 + '-' + 月 + '-' 日
        form.save()
    

4

2 回答 2

2

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

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

于 2011-11-01T12:09:11.967 回答
0

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

于 2011-11-01T13:18:57.267 回答