[英]Django models timestamp in MYSQL Db
我想將時間作為 unix 時間戳存儲在我的 MYSQL 數據庫中,我有 django 項目與 Z20F35E630DAF44DBFA4C3F68FZ539D
date = models.DateField()
但我沒有找到任何models.Timestamp()
或類似的東西。 有沒有辦法為 Django 中的 MYSQL Db 創建時間戳列? 我在堆棧上發現了一些文章,但它們已有 5 年以上的歷史,因此現在可能有更好的解決方案。
在 Django 中,通常為此使用DateTimeField
[Django-doc] 。 它是一個存儲日期和時間組合的列。
如果使用auto_now_add=True
[Django-doc]構造或更新記錄,則可以讓 Django 自動初始化(或更新)時間戳,以便在創建記錄時對其進行初始化,並auto_now=True
[Django-doc]進行更新。 因此,看到(基本)模型是一種常見的模式,例如:
class TimestampModel(models.Model):
created = models.DateTimeField(auto_now_add=True)
updated = models.DateTimeField(auto_now=True)
class Meta:
abstract = True
因此TimestampModel
的子類因此有兩個額外的列created
和updated
,分別存儲 object 的創建時間和最后更新時間。
datetime
時間列具有更大的范圍,如MySQL文檔中所述:
DATETIME
類型用於同時包含日期和時間部分的值。 MySQL 以'YYYY-MM-DD hh:mm:ss'
格式檢索和顯示DATETIME
值。 支持的范圍是'1000-01-01 00:00:00'
到'9999-12-31 23:59:59'
。
TIMESTAMP
數據類型用於同時包含日期和時間部分的值。TIMESTAMP
的范圍為'1970-01-01 00:00:01' UTC
到'2038-01-19 03:14:07' UTC
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.