Django中的DateTimeField和DateField实现


Posted in Python onFebruary 24, 2021

DateTimeField

日期+时间。
与python里的 datetime.datetime 实例同。

Django中的DateTimeField和DateField实现

比如,数据库字段内容为2018-08-30 16:31:00

有以下两个可选的选项,均为bool类型:
参数1:auto_now,默认值为false,设置为true时,每次执行 save 操作时,将其值设置为当前时间,并且每次修改model,都会自动更新。
使用场景:这个参数在需要存储“最后修改时间”的场景下,十分方便。
注意:设置该参数为true时,并不意味着字段的默认值设为当前时间,而是指字段会被“强制”更新到当前时间,你无法程序中手动为字段赋值;如果使用django自带的admin管理器,那么该字段在admin中是只读的。

参数2:auto_now_add,默认值为false,设置为true时,会在model对象第一次被创建时,将字段的值设置为创建时的时间,以后修改对象时,字段的值不会再更新。

使用场景:该属性通常被用在存储“创建时间”的场景下。

注意:一旦被设置为True,就无法在程序中手动为字段赋值,在admin中字段也会成为只读的。

auto_now和auto_now_add被设置为True后,这样做会导致字段成为editable=False和blank=True的状态。editable=False将导致字段不会被呈现在admin中,blank=Ture表示允许在表单中不输入值。

DateField

日期,与python里的datetime.date 实例同。

Django中的DateTimeField和DateField实现

比如,数据库字段内容为2018-08-30

有以下两个可选的选项,均为bool类型:
参数1:auto_now,默认值为false,设置为true时,每次执行 save 操作时,将其值设置为当前时间,并且每次修改model,都会自动更新。
使用场景:这个参数在需要存储“最后修改时间”的场景下,十分方便。
注意:设置该参数为true时,并不意味着字段的默认值设为当前时间,而是指字段会被“强制”更新到当前时间,你无法程序中手动为字段赋值;如果使用django自带的admin管理器,那么该字段在admin中是只读的。

参数2:auto_now_add,默认值为false,设置为true时,会在model对象第一次被创建时,将字段的值设置为创建时的时间,以后修改对象时,字段的值不会再更新。

使用场景:该属性通常被用在存储“创建时间”的场景下。

注意:一旦被设置为True,就无法在程序中手动为字段赋值,在admin中字段也会成为只读的。

auto_now和auto_now_add被设置为True后,这样做会导致字段成为editable=False和blank=True的状态。editable=False将导致字段不会被呈现在admin中,blank=Ture表示允许在表单中不输入值。

到此这篇关于Django中的DateTimeField和DateField实现的文章就介绍到这了,更多相关Django DateTimeField和DateField内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python的Flask框架中@app.route的用法教程
Mar 31 Python
python使用multiprocessing模块实现带回调函数的异步调用方法
Apr 18 Python
在Mac OS上部署Nginx和FastCGI以及Flask框架的教程
May 02 Python
Python函数式编程指南(二):从函数开始
Jun 24 Python
Python编程使用tkinter模块实现计算器软件完整代码示例
Nov 29 Python
python利用socketserver实现并发套接字功能
Jan 26 Python
Python wxPython库使用wx.ListBox创建列表框示例
Sep 03 Python
Python高级特性切片(Slice)操作详解
Sep 27 Python
Python获取时间范围内日期列表和周列表的函数
Aug 05 Python
解决pyshp UnicodeDecodeError的问题
Dec 06 Python
Python sorted对list和dict排序
Jun 09 Python
python解析照片拍摄时间进行图片整理
Jul 23 Python
Python制作运行进度条的实现效果(代码运行不无聊)
Feb 24 #Python
学点简单的Django之第一个Django程序的实现
Feb 24 #Python
python单例模式的应用场景实例讲解
Feb 24 #Python
python编写扎金花小程序的实例代码
Feb 23 #Python
Python项目实战之使用Django框架实现支付宝付款功能
Feb 23 #Python
Python接口自动化系列之unittest结合ddt的使用教程详解
Feb 23 #Python
python利用opencv实现颜色检测
Feb 23 #Python
You might like
PHP error_log()将错误信息写入一个文件(定义和用法)
2013/10/25 PHP
PHP中使用Memache作为进程锁的操作类分享
2015/03/30 PHP
js页面跳转常用的几种方式
2010/11/25 Javascript
jquery中使用$(#form).submit()重写提交表单无效原因分析及解决
2013/03/25 Javascript
深入浅析NodeJs并发异步的回调处理
2015/12/21 NodeJs
jQuery模仿阿里云购买服务器选择购买时间长度的代码
2016/04/29 Javascript
noty ? jQuery通知插件全面解析
2016/05/18 Javascript
Ext JS框架程序中阻止键盘触发回退或者刷新页面的代码分享
2016/06/07 Javascript
深入理解bootstrap框架之入门准备
2016/10/09 Javascript
RequireJS简易绘图程序开发
2016/10/28 Javascript
微信开发 JS-SDK 6.0.2 经常遇到问题总结
2016/12/08 Javascript
Vue.js 2.0中select级联下拉框实例
2017/03/06 Javascript
Angular.JS中指令ng-if的注意事项小结
2017/06/21 Javascript
解决vue-router进行build无法正常显示路由页面的问题
2018/03/06 Javascript
vue实现组件之间传值功能示例
2018/07/13 Javascript
浅谈Vue中render中的h箭头函数
2019/11/07 Javascript
vue项目中播放rtmp视频文件流的方法
2020/09/17 Javascript
uniapp实现横向滚动选择日期
2020/10/21 Javascript
javascript实现多边形碰撞检测
2020/10/24 Javascript
vue 使用 sortable 实现 el-table 拖拽排序功能
2020/12/26 Vue.js
python mysqldb连接数据库
2009/03/16 Python
Python脚本实现DNSPod DNS动态解析域名
2015/02/14 Python
详解Python中表达式i += x与i = i + x是否等价
2017/02/08 Python
Python通过for循环理解迭代器和生成器实例详解
2019/02/16 Python
Django REST framwork的权限验证实例
2020/04/02 Python
python 画图 图例自由定义方式
2020/04/17 Python
Django自关联实现多级联动查询实例
2020/05/19 Python
亚马逊加拿大网站:Amazon.ca
2020/01/06 全球购物
既然说Ruby中一切都是对象,那么Ruby中类也是对象吗
2013/01/26 面试题
小学语文课后反思精选
2014/04/25 职场文书
高中生毕业评语
2014/12/30 职场文书
后天观后感
2015/06/08 职场文书
安全知识竞赛主持词
2015/06/30 职场文书
2019年英语版感谢信(8篇)
2019/09/29 职场文书
nginx中proxy_pass各种用法详解
2021/11/07 Servers
吉利入股戴姆勒后smart“长大了”
2022/04/21 数码科技