前言
admin后台發布文章時,一般會有創建時間和最后更新時間這2個字段,創建時間是第一次創建時添加的,最后更新時間是每次更新內容時間更新。
在models.py文件創建表時,設置create_time 和update_time 類型為DateTimeFiled,添加auto_now_add和auto_now參數。
DateTimeField
創建django的modles.py文件,有DateTimeField、DateField和TimeField分別對應datetime(),date(),time(),分別有auto_now_add和auto_now參數對應。
auto_now_add 默認值為false,設置為True時會在model對象第一次被創建時,將字段的值設置為創建的時間,以后修改對象時,字段的值不會再更新。該屬性通常被用在存儲“創建時間的場景下”,auto_now_add具有強制性,一旦被設置為True,就無法在程序中手動為字段賦值,在admin中字段也會成為只讀的。
auto_now默認值為false,設置為True時,在保存字段時會自動設置為當前時間,通常應用場景為“最后修改時間”場景下,十分方便。在django自帶的admin管理器,該字段在admin中是只讀的,例:
在models.py下新建一個Article類,添加標題title,body內容,auth,create_time 和update_time ,字符串類型:CharFiled,必須要有max_length,如果正文內容很多時,需要使用TextField,代碼如下:

將創建的表注冊到admin管理后台

終端命令行下執行以下兩條命令:
python manage.py makemigrations
python manage.py migrate
打開navicat數據庫客戶端查看同步表格

登錄admin后台管理頁面
輸入命令行:python manage.py runserver 0.0.0.0:8000
打開admin后台,新增一條記錄
對 article數據庫進行編輯

列表頁面顯示結果如下,如果重新編輯的話,最后更新時間也會更新

如果獲取的當前時間顯示和我們的時間相差八個小時,需要在setting.py設置 TIME_ZONE = 'Asia/Shanghai' ,我這里已經設置好了。
