Django数据模型——通用字段选项
字段
一个模型最重要也是唯一必需的部分,是它定义的数据库字段
字段名称限制
1、字段名不能是python保留字,这样会导致python语法错误
2、字段不能包含连续一个以上的下划线,这样会和Django查询语句语法冲突
通用字段选项
null 如果设置为 True 的话,Django将在数据库中存储空值为 NULL 。默认为 False
blank 如果是 True ,该字段允许留空,默认为 False
choices 一个包含双元素元组的可迭代的对象,用于给字段提供选项
db_column 当前字段在数据库中对应的列的名字
db_index 如果为 True,创建表格时对这一列穿件数据库索引
default 字段默认值
editable 如果为False,这个字段在管理那界面或者表单将不能编辑,默认为True
help_text 在管理界面表单对象里显示在字段下面的额外帮助文本。即使你没有管理表单这个属性对文档也是有用的
primary_key 如果为 True ,这个字段就会成为模型的主键
radio_admin 对于 ForeignKey 或者拥有 choices 设置的字段,Django管理界面会使用列表选择框(<select>)。如果 radio_admin 设置为 True 的话,Django就会使用单选按钮界面。 如果字段不是 ForeignKey 或者没有 choices 设置的话,就不要对字段只用这个选项。
unique 如果是 True ,这个字段的值在整个表中必须是唯一的
unique_for_date 把它的值设成一个 DataField 或者 DateTimeField 的字段的名称,可以确保字段在这个日期内不会出现重复值
unique_for_month 和 unique_for_date 类似,只是要求字段在指定字段的月份内唯一
unique_for_year 和 unique_for_date 及 unique_for_month 类似,只是时间范围变成了一年
verbose_name ManyToManyField 和 OneToOneField 之外的字段都接受一个详细名称作为第一个位置参数。如果详细名称没有给定的话,Django会把字段的属性名中的下划线转化成空格后的字符串当作详细名称。
例:详细名称是 "Person's first name" : first_name = models.CharField("Person's first name", maxlength=30) 下面的例子中,详细名称是 "first name" : first_name = models.CharField(maxlength=30) ForeignKey 、 ManyToManyField 和 OneToOneField 要求第一个参数是一个模型类,所以只能使用关键字参数 verbose_name : poll = models.ForeignKey(Poll, verbose_name="the related poll") sites = models.ManyToManyField(Site, verbose_name="list of sites") place = models.OneToOneField(Place, verbose_name="related place") 这种转换不会把 verbose_name 的首字母大写,Django会根据需求自动大写首字母。
Django数据模型——通用字段选项的更多相关文章
- Django 数据模型的字段列表整理
一个模型最重要也是唯一必需的部分,是它定义的数据库字段. 字段名称限制: 1.一个字段名不能是一个Python保留字,因为那样会导致一个Python语法错误. 2.一个字段名不能包含连续的一个以上的下 ...
- Django数据模型——数据库字段类型
字段 一个模型最重要也是唯一必需的部分,是它定义的数据库字段 字段名称限制 1.字段名不能是python保留字,这样会导致python语法错误 2.字段不能包含连续一个以上的下划线,这样会和Djang ...
- Django(七)模型:字段属性、字段选项(参数)
一.模型类属性命名限制 参考:https://docs.djangoproject.com/zh-hans/3.0/topics/db/models/ 1)不能是python的保留关键字. 2)不允许 ...
- Django,数据模型创建之数据库API参考(转载)
一旦 数据模型 创建完毕, 自然会有存取数据的需要.本文档介绍了由 models 衍生而来的数据库抽象API,及如何创建,得到及更新对象. 贯穿本参考, 我们都会引用下面的民意测验(Poll)应用程序 ...
- django model常用字段类型
摘自 http://www.cnblogs.com/wt869054461/p/4014271.html V=models.AutoField(**options) #int:在Django代码内是自 ...
- django数据模型中关于on_delete的使用
django数据模型中关于on_delete的使用 class BookModel(models.Model): """ 书籍表 """ b ...
- django:field字段类型
字段类型(Field types) AutoField 它是一个根据 ID 自增长的 IntegerField 字段.通常,你不必直接使用该字段.如果你没在别的字段上指定主 键,Django 就会自动 ...
- 二 Djano模型层之模型字段选项
字段选项 以下参数是全部字段类型都可用的,而且是可选的 null 如果为True,Django将在数据库中将空值存储为NULL.默认值为False 对于字符串字段,如果设置了null=True意味着& ...
- django表单字段
在通过django.forms.Forms创建表单字段时,其中每个字段都有一些自定义的验证逻辑和一些其他钩子 虽然表单字段的Field类主要使用在Form类中,但也可以直接实例化来使用它们,以更好的了 ...
随机推荐
- hdu1800 贪心+hash+真的有毒
这道题用map<string,int>TLE到死.这题又是一道毒题,看了评论,居然可以用int读入,而且网上还有用排序的....用int的连前导0都不需要处理了 说下贪心吧,每把扫帚一定要 ...
- HDU - 2112 HDU Today Dijkstra
注意: 1.去重边 2.终点和起点一样,应当输出0 3.是无向图 AC代码 #include <cstdio> #include <cmath> #include <al ...
- day4(while 、练习题)
一.while ... else 方法 while else 的作用就是,确定循环正确执行完毕,else里面可以提示完成的情况. 二.练习题 1.编译型语言是编译完之后执行,解释性语言是边编译边执行, ...
- 20170109| javascript记录
1.时间戳的使用: 在php中的时间戳是以秒为单位的,在js中转换过来的时间戳是以毫秒为单位的.当我们使用js和php同时开发的时候,就需要保证它们都是处于同一时间单位下才好进行相关的计算. 首先说一 ...
- Tcpdump安装使用
本来想安装wireshark yum install wireshark 命令行下使用,包含抓包的基本功能 yum install wireshark-gnome 提供wireshark(UI)工 ...
- Git创建本地分支并推送到远程github仓库
- ios学习- 10大iOS开发者最喜爱的类库
该10大iOS开发者最喜爱的库由“iOS辅导团队”成员Marcelo Fabri组织投票选举而得,参与者包括开发者团队,iOS辅导团队以及行业嘉宾.每个团队都要根据以下规则选出五个最好的库: 1)不能 ...
- Linux基础五
Yum软件包管理 yum:基于rpm包构建的软件更新机制 自动解决软件包依赖关系 所有软件包由集中的yum软件仓库提供. [root@hydra桌面]#ls /misc/cd/repodata/ (r ...
- 子沐代码段——Flask+Mysql+Echarts可视化
前言 子沐不久前,使用Scrapy爬取了智联招聘的职位数据,并部署到服务器上,设置了定时任务.数据量日益庞大.子沐在想,数据不过只是存在数据库里,并没有什么意义,所以子沐萌发一个想法,那就是做一个可视 ...
- Java之split()方法
Java之split()方法 1.方法介绍 (1)public String[] split(String regex) 根据给定正则表达式的匹配拆分此字符串 (2)public String[] s ...