Django 数据模型的字段列表整理
一个模型最重要也是唯一必需的部分,是它定义的数据库字段。
字段名称限制:
1.一个字段名不能是一个Python保留字,因为那样会导致一个Python语法错误。
2.一个字段名不能包含连续的一个以上的下划线,因为那是Django查询语句的语法。
字段列表纵览表
|
字段名 |
参数 |
意义 |
|
AutoField |
一个能够根据可用ID自增的 IntegerField |
|
|
BooleanField |
一个真/假(true/false)字段 |
|
|
CharField |
(max_length) |
一个字符串字段,适用于中小长度的字符串。对于长段的文字,请使用 TextField |
|
CommaSeparatedIntegerField |
(max_length) |
一个用逗号分隔开的整数字段 |
|
DateField |
([auto_now], [auto_now_add]) |
日期字段 |
|
DateTimeField |
时间日期字段,接受跟 DateField 一样的额外选项 |
|
|
EmailField |
一个能检查值是否是有效的电子邮件地址的 CharField |
|
|
FileField |
(upload_to) |
一个文件上传字段 |
|
FilePathField |
(path,[match],[recursive]) |
一个拥有若干可选项的字段,选项被限定为文件系统中某个目录下的文件名 |
|
FloatField |
(max_digits,decimal_places) |
一个浮点数,对应Python中的 float 实例 |
|
ImageField |
(upload_to, [height_field] ,[width_field]) |
像 FileField 一样,只不过要验证上传的对象是一个有效的图片。 |
|
IntegerField |
一个整数。 |
|
|
IPAddressField |
一个IP地址,以字符串格式表示(例如: "24.124.1.30" )。 |
|
|
NullBooleanField |
就像一个 BooleanField ,但它支持 None /Null 。 |
|
|
PhoneNumberField |
它是一个 CharField ,并且会检查值是否是一个合法的美式电话格式 |
|
|
PositiveIntegerField |
和 IntegerField 类似,但必须是正值。 |
|
|
PositiveSmallIntegerField |
与 PositiveIntegerField 类似,但只允许小于一定值的值,最大值取决于数据库. |
|
|
SlugField |
嵌条 就是一段内容的简短标签,这段内容只能包含字母、数字、下 划线或连字符。通常用于URL中 |
|
|
SmallIntegerField |
和 IntegerField 类似,但是只允许在一个数据库相关的范围内的数值(通常是-32,768到 +32,767) |
|
|
TextField |
一个不限长度的文字字段 |
|
|
TimeField |
时分秒的时间显示。它接受的可指定参数与 DateField 和 DateTimeField 相同。 |
|
|
URLField |
用来存储URL的字段。 |
|
|
USStateField |
美国州名称缩写,两个字母。 |
|
|
XMLField |
(schema_path) |
它就是一个 TextField ,只不过要检查值是匹配指定schema的合法XML。 |
通用字段参数列表(所有的字段类型都可以使用下面的参数,所有的都是可选的。)
|
参数名 |
意义 |
|
null |
如果设置为 True 的话,Django将在数据库中存储空值为 NULL 。默认为 False 。 |
|
blank |
如果是 True ,该字段允许留空,默认为 False 。 |
|
choices |
一个包含双元素元组的可迭代的对象,用于给字段提供选项。 |
|
db_column |
当前字段在数据库中对应的列的名字。 |
|
db_index |
如果为 True ,Django会在创建表格(比如运行 manage.py syncdb )时对这一列创建数据库索引。 |
|
default |
字段的默认值 |
|
editable |
如果为 False ,这个字段在管理界面或表单里将不能编辑。默认为 True 。 |
|
help_text |
在管理界面表单对象里显示在字段下面的额外帮助文本。 |
|
primary_key |
如果为 True ,这个字段就会成为模型的主键。 |
|
radio_admin |
默认地,对于 ForeignKey 或者拥有 choices 设置的字段,Django管理界面会使用列表选择框(<select>)。如果 radio_admin 设置为 True 的话,Django就会使用单选按钮界面。 |
|
unique |
如果是 True ,这个字段的值在整个表中必须是唯一的。 |
|
unique_for_date |
把它的值设成一个 DataField 或者 DateTimeField 的字段的名称,可以确保字段在这个日期内不会出现重复值。 |
|
unique_for_month |
和 unique_for_date 类似,只是要求字段在指定字段的月份内唯一。 |
|
unique_for_year |
和 unique_for_date 及 unique_for_month 类似,只是时间范围变成了一年。 |
|
verbose_name |
除 ForeignKey 、 ManyToManyField 和 OneToOneField 之外的字段都接受一个详细名称作为第一个位置参数。 |
Django 数据模型的字段列表整理的更多相关文章
- Django数据模型——通用字段选项
字段 一个模型最重要也是唯一必需的部分,是它定义的数据库字段 字段名称限制 1.字段名不能是python保留字,这样会导致python语法错误 2.字段不能包含连续一个以上的下划线,这样会和Djang ...
- Django数据模型——数据库字段类型
字段 一个模型最重要也是唯一必需的部分,是它定义的数据库字段 字段名称限制 1.字段名不能是python保留字,这样会导致python语法错误 2.字段不能包含连续一个以上的下划线,这样会和Djang ...
- django获取字段列表(values/values_list/flat)
django获取字段列表(values/values_list/flat) values方法可以获取number字段的字典列表 values_list可以获取number的元组列表 values_li ...
- Django,数据模型创建之数据库API参考(转载)
一旦 数据模型 创建完毕, 自然会有存取数据的需要.本文档介绍了由 models 衍生而来的数据库抽象API,及如何创建,得到及更新对象. 贯穿本参考, 我们都会引用下面的民意测验(Poll)应用程序 ...
- Django模板语言,过滤器整理
Django模板语言,过滤器整理 1. add {{ value|add:"2" }} 把add后的参数加给value: 处理时,过滤器首先会强制把两个值转换成Int类型. 如果强 ...
- Django ormmodel模型字段参考文章
Model 字段参考 (Model field reference)¶ 本文档包含所有 字段选项 (field options) 的内部细节和 Django 已经提供的 field types . 参 ...
- django:field字段类型
字段类型(Field types) AutoField 它是一个根据 ID 自增长的 IntegerField 字段.通常,你不必直接使用该字段.如果你没在别的字段上指定主 键,Django 就会自动 ...
- django表单字段
在通过django.forms.Forms创建表单字段时,其中每个字段都有一些自定义的验证逻辑和一些其他钩子 虽然表单字段的Field类主要使用在Form类中,但也可以直接实例化来使用它们,以更好的了 ...
- django关系类型字段
一.多对一(ForeignKey) 多对一的关系,通常被称为外键.外键字段类的定义如下: class ForeignKey(to, on_delete, **options)[source] 外键需要 ...
随机推荐
- [转]微信小程序开发:http请求
本文转自:http://www.cnblogs.com/dragondean/p/5921079.html 在微信小程序进行网络通信,只能和指定的域名进行通信,微信小程序包括四种类型的网络请求. 普通 ...
- 游标的小知识(转载and整理)
一.游标(用来存储多条查询数据的一种数据结构(结果集),它有一个指针,用来从上往下移动,从而达到遍历每条记录的作用) 游标也可以理解为逐行返回SQL语句的结果集 如何编写一个游标? 1.声明游标 de ...
- Java实现在线预览–openOffice实现
实现逻辑有两种: 一.利用jodconverter(基于OpenOffice服务)将文件(.doc..docx..xls..ppt)转化为html格式. 二.利用jodconverter(基于Open ...
- fzu 2138 久违的月赛之一 容斥。
Problem 2138 久违的月赛之一 Accept: 40 Submit: 86 Time Limit: 1000 mSec Memory Limit : 32768 KB Probl ...
- flask-login2的简单使用
#coding:utf8 from flask import Flask, render_template, request, redirect, url_for, flash, abort from ...
- Python入门-内置函数一
什么是内置函数?就是python给你提供的拿来直接用的函数,比如print,input等等,截止到python版本3.6.2 python一共提供了68个内置函数,他们就是python直接提供给我们的 ...
- 软件项目技术点(6)——结合鼠标操作绘制动态canvas画布
AxeSlide软件项目梳理 canvas绘图系列知识点整理 我们创建一个类封装了所有鼠标需要处理的事件. export class MouseEventInfo { el: HTMLElemen ...
- ES6入门——数值的扩展
1.二进制和八进制表示法 ES6提供了二进制和八进制数值的新的写法,分别用前缀0b或0B和0o或0O表示. 2.Number.isFinite(),Number.isNaN() ES6在Number对 ...
- 一、CSS实现横列布局的方法总结
一.使用float实现横列布局的方法 如下面所示:DIV1和DIV2都可以选择向左或者向右浮动50%来实现展示在同一行 div1 div2 实现下面图片中布局的css样式如下: 分析: 1.第一行第一 ...
- 插入mysql语句报错:1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near
插入一个很简单的sql语句时候,mysql一直报错: [SQL] INSERT INTO ORDER ( id, activity_id, order_type, phone, order_amoun ...