Django模型的字段类型

Django模型中最重要并且也是唯一必须执行的就是字段定义。字段在类中进行定义,对应于实体数据库的字段。另外,定义模型字段名时为了避免冲突,不建议使用模型API中已经定义的关键字。

字段类型用以指定数据库的数据类型,例如Integer、VARCHAR和TEXT这几种比较常用的数据类型。在Django模型定义中,字段类型均派生自Field类的实例。Django框架中的Field类是一个抽象类,专门用于定义数据库表的列表项。

Django模型一共内置了多种字段类型,基本能够满足一般的设计需求。Django模型的主要字段类型说明如下:

  • AutoField:一个自动增加的Integer类型。一般情况下,AutoField类型是不需要直接使用的,域的主键会自动被添加到模型中。
  • BigAutoField:类似AutoField类型,一个自动增加的长Integer(64-bit)类型(1~9223372036854775807)。
  • IntegerField:一个Integer类型(−2147483648~2147483647)。
  • BigIntegerField:一个长Integer类型(−9223372036854775808~9223372036854775807)。
  • SmallIntegerField:一个Small Integer类型(−32768~32767)。
  • BinaryField:一个用来存储二进制数据的类型。
  • BooleanField:一个用来存储布尔值(True / False)的类型。
  • NullBooleanField:类似BooleanField(null=True)类型。
  • FloatField:一个用来存储浮点型数据的类型,表示Python语言中的float实例。
  • CharField:一个用来存储字符串的类型。CharField类型必须额外定义一个表示最大长度的参数——CharField.max_length。
  • DateField:一个用来存储日期的类型,表示Python语言中的datetime.date实例。CharField类型可以额外定义两个可选参数——DateField.auto_now和DateField.auto_now_add。其中,DateField.auto_now参数用于自动获取当前时间,DateField.auto_now_add参数用于在对象第一次创建时自动获取当前时间。
  • DateTimeField:一个用来存储日期和时间的类型,表示Python语言中的datetime.datetime   实例。
  • TimeField:一个用来存储时间的类型,表示Python语言中的datetime.time实例。
  • DecimalField:一个用来存储十进制数据的类型,表示Python语言中的Decimal实例。DecimalField类型需要定义两个必选参数——DecimalField.max_digits和 DecimalField.decimal_places。其中,DecimalField.max_digits参数表示最大数值, DecimalField.decimal_places参数表示存储位置。
  • DurationField:一个用来存储时间间隔的类型,表示Python语言中的timedelta。
  • EmailField:一个CharField类型的域,用于表示电子邮件类型。
  • FileField:一个用于文件上传的类型。FileField类型需要定义两个必选参数——FileField.upload_to和 FileField.storage。其中,FileField.upload_to参数表示存储路径,FileField.storage参数表示存储对象。
  • TextField:一个用于存储文本的类型,在表单域中默认使用TextArea小部件(Widget)。
  • ImageField:一个用来存储Image文件的类型,继承自FileField类型。ImageField类型需要定义两个必选参数——ImageField.height_field和ImageField.width_field。其中,ImageField.height_field参数表示Image文件的高度,ImageField.width_field参数表示Image文件的宽度。
  • GenericIPAddressField:一个用来存储原生IP(IPv4或IPv6)地址的类型,在表单域中默认使用TextInput小部件(Widget)。
  • URLField:一个用来存储URL的类型,继承自CharField类型,在表单域中默认使用TextInput小部件(Widget)。

《Django 5企业级Web应用开发实战(视频教学版)》1-7章样章,评估一下看看如何。配套示例源码、PPT课件、教学视频,可以通过前言给出的下载方式下载。

百度网盘:百度网盘 请输入提取码

本文节选自《Django 5企业级Web应用开发实战(视频教学版)》,获出版社和作者授权发布。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/556768.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

瑞芯微RK3328(ROC-RK3328-PC)buildroot 开发QT的hello world

第一部分:编译rk3328 sdk 0. 环境 - EC-R3328PC(ROC-RK3328-PC) - ubuntu18(100GB) 1. 安装依赖 sudo apt-get updatesudo apt-get install repo git-core gitk git-gui gcc-arm-linux-gnueabihf u-boot-tools devi…

C++ //练习 12.26 用allocator重写第427中的程序。

C Primer(第5版) 练习 12.26 练习 12.26 用allocator重写第427中的程序。 环境:Linux Ubuntu(云服务器) 工具:vim 代码块 /************************************************************************…

Linux入门攻坚——19、sed入门、bash脚本编程续

sed:Stream EDitor,流编辑器,行编辑器:实现文本编辑时是逐行进行的。 用法: sed [option]... script inputfile... script:‘地址命令’,如1,4d sed是将文件内容读取后放入自己的编辑…

Junit 历史-ApiHug准备-测试篇-008

🤗 ApiHug {Postman|Swagger|Api...} 快↑ 准√ 省↓ GitHub - apihug/apihug.com: All abou the Apihug apihug.com: 有爱,有温度,有质量,有信任ApiHug - API design Copilot - IntelliJ IDEs Plugin | Marketplace 背景 J…

【人工智能书籍】一本书读懂AIGC:ChatGPT、AI绘画、智能文明与生产力变革(PDF分享)

今天又来给大家推荐一本人工智能方面的书籍<一本书读懂AIGC&#xff1a;ChatGPT、AI绘画、智能文明与生产力变革>。本书以通俗易懂的方式从各个层面介绍了AIGC的基础知识&#xff0c;并辅以大量案例引领读者了解AIGC的应用实践&#xff0c;让读者可以更快速地利用AIGC改善…

02节-51单片机-LED模块

文章目录 1.点亮一个LED灯2.LED闪烁3.LED流水灯 1.点亮一个LED灯 #include <REGX52.H> void main() {P20xFE; //1111 1110while(1){} }2.LED闪烁 增加延时&#xff0c;控制LED的亮灭间隙 延时函数的添加依靠STC-ISP软件的延时函数功能代码自动生成&#xff0c;如图 #i…

递归 python

↵一、简单理解 解决问题的一种方法&#xff0c;它将问题不断的分成更小的子问题&#xff0c;直到子问题可以用普通的方法解决。通常情况下&#xff0c;递归会使用一个不停调用自己的函数。 【注】&#xff1a;每一次递归调用都是在解决一个更小的问题&#xff0c;如此进行下…

数据库管理-第171期 Oracle是用这种方式确保读一致的(20240418)

数据库管理171期 2024-04-18 数据库管理-第171期 Oracle是用这种方式确保读一致的&#xff08;20240418&#xff09;1 基本概念2 用处3 注意事项总结 数据库管理-第171期 Oracle是用这种方式确保读一致的&#xff08;20240418&#xff09; 作者&#xff1a;胖头鱼的鱼缸&#x…

Docker文档阅读笔记-How to Run GUI Based Applications inside Docker?

以后的文档阅读笔记不在一一介绍。以后只总结干货和重点。 Step 1 使用Systemctl命令启动docker服务&#xff1a; systemctl start docker // to start the docker service. systemctl status docker // to check the status . systemctl restart docke…

mybatis创建入门流程体验

mysql数据库中建表 drop table if exists tb_user;create table tb_user(id int primary key auto_increment,username varchar(20),password varchar(20),gender char(1),addr varchar(30) );INSERT INTO tb_user VALUES (1, zhangsan, 123, 男, 北京); INSERT INTO tb_user …

四川易点慧电子商务抖音小店:安全先行,购物无忧

随着互联网的飞速发展&#xff0c;电子商务已成为人们日常购物的重要渠道。抖音小店作为新兴的电商平台&#xff0c;凭借其独特的社交属性和庞大的用户基础&#xff0c;迅速崛起并吸引了众多商家的入驻。在这个背景下&#xff0c;四川易点慧电子商务有限公司&#xff08;以下简…

Android11应用安装未知来源的权限改动

最近开发的App需要下载安装另一个App。这就涉及到了app的安装代码。关于App的安装代码&#xff0c;写了不少&#xff0c;所以这一块觉得不是问题&#xff1a; 判断版本&#xff0c;Android8.0判断是否有未知来源安装全选&#xff0c;没有则打开未知来源安装权限设置界面去开启…

Linux并发程序设计(1):进程的创建和回收

目录 1、基本概念概念 1.1 程序 1.2 进程 1.3 进程的内容 1.4 进程类型 1.5 进程状态 2、常用命令 2.1 查看进程信息 2.2 改变进程优先级 2.2.1 按用户指定的优先级运行进程 2.2.2 改变正在运行进程的优先级 2.3 其他相关指令 3、进程的创建和结束 3.1 子进程创建 3.1.1 …

Odoo讨论+聊天模块:一体化内部协作平台,赋能高效沟通与业务流程协作

Odoo讨论聊天模块&#xff1a;一体化内部协作平台&#xff0c;赋能高效沟通与业务流程协作 Odoo 讨论模块是一个集成了即时通讯、文件共享、业务关联、权限控制等功能于一体的内部协作工具&#xff0c;允许用户通过跨模块的聊天窗口或通过专用的“讨论”面板互相发送消息、分享…

Golang(一):基础、数组、map、struct

目录 hello world 变量 常量&#xff0c;iota 函数 init函数和导包过程 指针 defer 数组和动态数组 固定长度数组 遍历数组 动态数组 len 和 cap 截取 切片的追加 map 四种声明方式 遍历map 删除 查看键是否存在 结构体 声明 作为形参 方法 封装 继承…

笔记软件功能多样的是哪款?做笔记的软件哪个好用

在快节奏的现代生活中&#xff0c;笔记软件已成为我们提高工作效率、记录生活点滴的重要工具。想象一下&#xff0c;在繁忙的工作中&#xff0c;你能够快速记录下关键信息&#xff0c;或在灵感迸发时及时捕捉&#xff0c;这是多么方便高效。 一款功能多样的笔记软件&#xff0…

Syncovery for Mac:高效文件备份和同步工具

Syncovery for Mac是一款专为Mac用户设计的文件备份和同步工具&#xff0c;凭借其高效、安全和易用的特点&#xff0c;深受用户好评。 Syncovery for Mac v10.14.2激活版下载 该软件具备强大的备份功能&#xff0c;支持多种备份方案和数据格式&#xff0c;用户可以根据需求轻松…

Python教学入门:函数

在 Python 中&#xff0c;def 关键字用于定义函数。函数是一段可重用的代码块&#xff0c;用于执行特定的任务或操作。通过定义函数&#xff0c;可以将一段代码封装起来&#xff0c;使其可以在程序中被多次调用&#xff0c;提高代码的复用性和可维护性。 下面是 def 函数定义的…

pandas/python 一个实战小案例

上次写坦克游戏的时候&#xff0c;接触了一点pandas&#xff0c;当时只是简单了解了一下如何遍历行和列并获取值来替换图片&#xff0c;想更多了解pandas。正好有一些数据需要筛选&#xff0c;试试能不能用通过代码实现。虽然总的来说不复杂&#xff0c;但由于原始数据在命名、…

如何训练猫出门不害怕:耐心做好这些训练,轻松get能溜的小猫

一般我们外出见到的都是遛狗的&#xff0c;溜猫的相对少见&#xff0c;一方面是因为猫咪是喜欢安静独处的小动物&#xff0c;另一方面是糟乱的环境也容易引起猫咪的应激。对于是否应该“溜猫”&#xff0c;有两个极端的阵营。一些铲屎官认为应尊重猫的天性&#xff0c;胆小不爱…