我是Django的新手。我会更好地掌握Rails中这一点,但对Python/Django中的所有库和对话不够熟悉。
我有一个模型:
class Status(models.Model):
created = models.DatetimeField(auto_now_add=True)
这将产生以下格式:
"created": "2017-01-06T22:21:51.531723Z"
我希望在保存到数据库之前看看它是否存储为 UNIX 值?
这看起来很有希望 https://stackoverflow.com/a/34843855/3007294 但无法让它工作。每次我尝试创建 Status 对象时,都会收到此错误:
Datetime has wrong format. Use one of these formats instead: YYYY-MM-DDThh:mm[:ss[.uuuuuu]][+HH:MM|-HH:MM|Z].
我的目的是不必在每次创建 Status 对象时都输入此内容。
谢谢-
我的目的是不必在每次创建 Status 对象时都输入此内容。
这已经通过auto_now_add=True
选项解决了。创建Status
对象时,created
字段将使用当前日期时间填充。
我希望在保存到数据库之前看看它是否存储为 UNIX 值?
您可以随时将datetime
值从 Status.created
转换为 Unix 时间戳。通常最好将其存储为默认数据库日期时间格式(DatetimeField
所做的),而不是将其存储为时间戳,时间戳只是一个整数。
但是,您提供的示例中使用的库django-unixdatetimefield
指出"UnixDateTimeField基于标准Django DateTimeField的实现,使其与它支持的所有功能和选项100%兼容。因此,您应该能够为该字段提供auto_now_add=True
选项。