在保存值Django之前在模型中设置字段

时间:2020-05-13 21:48:10

标签: python django django-models django-forms django-views

我有一个带有date_posted字段的对象,该对象基本上是使用auto_now_add = True创建的日期对象。在我的表单中,我有一个带有值的下拉列表。而且我打算将该值添加到expiry字段中,该字段也是一个DateTime对象。我认为目前,我有:

 post = form.save(False)
 e = int(request.POST['expiry'])
 post.expiry = post.date_posted + datetime.timedelta(days=e)
 post.save()

但是,我遇到此错误:

post.expiry = post.date_posted + datetime.timedelta(days=e)
TypeError: unsupported operand type(s) for +: 'NoneType' and 'datetime.timedelta'

我认为是因为我的对象尚未保存到数据库中。如何在从表单中获得的“到期日”字段中添加“天数”?

我已经打印了e值,并且可以正确接收。

我也不想在save()方法中添加date_posted,因为它可能会导致Django中设置的自动时区出现问题

0 个答案:

没有答案