Fil*_*ixo 4 python django timestamp django-models
在这里找到了同一问题的答案django 中的时间戳字段,但我认为我遗漏了一些东西 - 在 django 模型中保存时间戳不应该比创建自己的时间戳字段更容易吗?
我有一个有DateTimeField字段的模型。为了满足该领域的需要,我使用了一个datetime对象。但我刚刚意识到该datetime对象实际上并不包含时区,所以我最好直接存储时间戳,因为最初我是从时间戳中的 API 获取这些数据的。还有比上面的答案更直接的方法吗?
您不需要使用datetime对象来提供DateTimeField. 您可以使用auto_now_add=\xe2\x80\xa6参数[Django-doc]或auto_now=\xe2\x80\xa6参数[Django-doc]分别存储创建或更新的时间戳。过去,存在一些问题,但据我所知,这些问题已得到解决。
例如:
\nclass MyModel(models.Model):\n created = models.DateTimeField(auto_now_add=True)\n updated = models.DateTimeField(auto_now=True)Run Code Online (Sandbox Code Playgroud)\n或者您可以指定一个抽象基类,并在所有需要时间戳的模型中继承:
\nclass TimestampedModel(models.Model):\n created = models.DateTimeField(auto_now_add=True)\n updated = models.DateTimeField(auto_now=True)\n\n class Meta:\n abstract = True\n\nclass MyModel(TimestampedModel):\n # …\n passRun Code Online (Sandbox Code Playgroud)\n对于datetime对象,您可以包含带有 的时区tzinfo。例如,您可以将时区设置为UTC:
from dateutil.tz import UTC\n\nmynewdatetime = mydatetime.replace(tzinfo=UTC)Run Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
4954 次 |
| 最近记录: |