zoukankan      html  css  js  c++  java
  • django框架学习:十八.添加创建时间DateTimeFiled

    前言

    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' ,我这里已经设置好了。

  • 相关阅读:
    Java 处理cookie的方法
    HTML5的新标签-整体布局
    Git学习文档——文件状态git status
    Css中路径data用法
    python2
    hangfire
    Nginx系列~Nginx服务启动不了
    git形成本地仓库并从远处url拉取
    orcal和sql server中的字符串查找函数
    Eclipse 修改项目名称
  • 原文地址:https://www.cnblogs.com/liushui0306/p/12638974.html
Copyright © 2011-2022 走看看