簡體   English   中英

Django 模型時間戳 MYSQL Db

[英]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的子類因此有兩個額外的列createdupdated ,分別存儲 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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM