Python:Django框架:Apps.models:继承models.Model的字段数据类型--方法和字段参数--参数列表
- 一、简单案例
- 二、字段数据类型(方法、函数名):
- 1、models.AutoField----自增列= int(11)
- 2、models.CharField----字符串字段
- 3、models.BooleanField---布尔类型=tinyint(1)
- 4、models.ComaSeparatedIntegerField----用逗号分割的数字=varchar
- 5、models.DateField----日期类型 date
- 6、models.DateTimeField----日期类型 datetime
- 7、models.Decimal----十进制小数类型= decimal
- 8、models.EmailField----字符串类型(正则表达式邮箱)=varchar
- 9、models.FloatField----浮点类型= double
- 10、models.IntegerField----整形
- 11、models.BigIntegerField----长整形
- 12、models.IPAddressField----字符串类型(ip4正则表达式)
- 13、models.GenericIPAddressField----字符串类型(ip4和ip6是可选的)
- 14、models.NullBooleanField----允许为空的布尔类型
- 15、models.PositiveIntegerFiel----正Integer
- 16、models.PositiveSmallIntegerField----正smallInteger
- 17、models.SlugField----减号、下划线、字母、数字
- 18、models.SmallIntegerField----数字
- 19、models.TextField----字符串=longtext
- 20、models.TimeField----时间HH:MM[:ss[.uuuuuu]]
- 21、models.URLField----字符串,地址正则表达式
- 22、models.BinaryField----二进制
- 23、models.ImageField图片
- 24、models.FilePathField文件
- 三、字段参数(参数列表)
- 1、null=True
- 2、blank=True
- 3、primary_key =False
- 4、auto_now 和 auto_now_add
- 5、choices
- 6、max_length
- 7、default----默认值
- 8、verbose_name----Admin中字段的显示名称
- 9、name|db_column----数据库中的字段名称
- 10、unique=True----不允许重复
- 11、db_index =True----数据库索引
- 12、editable=True----在Admin里是否可编辑
- 13、error_messages=None----错误提示
- 14、auto_created=False----自动创建
- 15、help_text----在Admin中提示帮助信息
- 16、validators=[]
- 17、upload-to
一、简单案例
from django.db import models
class Users(models.Model):
uname = models.CharField(max_length=20, null=False, unique=False)
upassword = models.CharField(max_length=20, null=False, unique=False)
utime = models.DateTimeField(auto_now_add=True)
二、字段数据类型(方法、函数名):
1、models.AutoField----自增列= int(11)
如果没有的话,默认会生成一个名称为 id 的列,如果要显示的自定义一个自增列,必须将给列设置为主键 primary_key=True
2、models.CharField----字符串字段
必须 max_length 参数
3、models.BooleanField—布尔类型=tinyint(1)
不能为空,Blank=True
4、models.ComaSeparatedIntegerField----用逗号分割的数字=varchar
继承CharField,所以必须 max_lenght 参数
5、models.DateField----日期类型 date
对于参数,auto_now =True则每次更新都会更新这个时间;auto_now_add 则只是第一次创建添加,之后的更新不再改变。
6、models.DateTimeField----日期类型 datetime
同DateField的参数
7、models.Decimal----十进制小数类型= decimal
必须指定整数位max_digits和小数位decimal_places
8、models.EmailField----字符串类型(正则表达式邮箱)=varchar
对字符串进行正则表达式
9、models.FloatField----浮点类型= double
10、models.IntegerField----整形
11、models.BigIntegerField----长整形
integer_field_ranges ={
'SmallIntegerField':(-32768,32767),
'IntegerField':(-2147483648,2147483647),
'BigIntegerField':(-9223372036854775808,9223372036854775807),
'PositiveSmallIntegerField':(0,32767),
'PositiveIntegerField':(0,2147483647),
}
12、models.IPAddressField----字符串类型(ip4正则表达式)
13、models.GenericIPAddressField----字符串类型(ip4和ip6是可选的)
参数protocol可以是:both、ipv4、ipv6
验证时,会根据设置报错
14、models.NullBooleanField----允许为空的布尔类型
15、models.PositiveIntegerFiel----正Integer
16、models.PositiveSmallIntegerField----正smallInteger
17、models.SlugField----减号、下划线、字母、数字
18、models.SmallIntegerField----数字
数据库中的字段有:tinyint、smallint、int、bigint
19、models.TextField----字符串=longtext
20、models.TimeField----时间HH:MM[:ss[.uuuuuu]]
21、models.URLField----字符串,地址正则表达式
22、models.BinaryField----二进制
23、models.ImageField图片
24、models.FilePathField文件
三、字段参数(参数列表)
1、null=True
数据库中字段是否可以为空
2、blank=True
django的Admin中添加数据时是否可允许空值
3、primary_key =False
主键,对AutoField设置主键后,就会代替原来的自增 id 列
4、auto_now 和 auto_now_add
auto_now 自动创建—无论添加或修改,都是当前操作的时间
auto_now_add 自动创建—永远是创建时的时间
5、choices
GENDER_CHOICE =(
(u'M', u'Male'),
(u'F', u'Female'),
)
gender = models.CharField(max_length=2,choices = GENDER_CHOICE)
6、max_length
7、default----默认值
8、verbose_name----Admin中字段的显示名称
9、name|db_column----数据库中的字段名称
10、unique=True----不允许重复
11、db_index =True----数据库索引
12、editable=True----在Admin里是否可编辑
13、error_messages=None----错误提示
14、auto_created=False----自动创建
15、help_text----在Admin中提示帮助信息
16、validators=[]
17、upload-to