码迷,mamicode.com
首页 > 其他好文 > 详细

Django学习手册 - ORM数据类型

时间:2018-08-24 13:26:36      阅读:268      评论:0      收藏:0      [点我收藏+]

标签:core   的区别   com   tor   blob   手册   duration   正则匹配   load   

DOM 字段/参数

配置格式:

  Module.字段(参数)

 

 

常用的字段归纳:

 

数字

 

models.AutoField()                                    自增列(int),必须设置为主键
models.IntegerField()                                整型
models.FloatField()                                   浮点
models.DecimalField(max_digits=8,decimal_places=3)    精确浮点                                    

 

字符串

 

models.CharField()           字符串,必须设置max_length 参数
models.TextField(Field)      文本类型 

 

时间

 

models.DateField()
models.DateTimeField()


参数:
Auto_now              #现在时间(更新时间)
Auto_now_add          #创建时间


注:(更新时间使用)
更新方式一:
Obj = userinfo.objects.filter(id=1).update(name=”root”)    不生效

更新方式二:
Obj = userinfo.objects.filter(id=1).first()
Obj.save()
生效

 

其他

 

Models.BinaryField()            二进制
Models.ImageField()             图片
Models.FilePathField()          文件        

 

常用参数:

 

Null                 是否为空(T,F)
Default              默认参数
Primary_key          主键
Db_index             索引
Unique               唯一索引
Verbose_name         显示字段中文

 

 

在Django admin中生效的字段:

Emailfield ()                     
GenericIPAddressField()         
URLField()                         
EmailField(CharField)
IPAddressField(Field)
URLField(CharField)
SlugField(CharField)
UUIDField(Field)
FilePathField(Field)       参数: path, 文件夹路径 match
=None, 正则匹配 recursive=False, 递归下面的文件夹 allow_files=True, 允许文件 allow_folders=False, 允许文件夹 FileField(Field)       参数:     upload_to = "" 上传文件的保存路径     storage = None 存储组件,默认django.core.files.storage.FileSystemStorage
ImageField(FileField) CommaSeparatedIntegerField(CharField)格式必须为逗号分割的数字 拓展: models.CharField  对应的是MySQL的varchar数据类型
char 和 varchar的区别 : char和varchar的共同点是存储数据的长度,不能 超过max_length限制, 不同点是varchar根据数据实际长度存储,char按指定max_length()存储数据;所有前者更节省硬盘空间;


返回值为字段在数据库中的属性,Django字段默认的值为:

       ‘AutoField: integer AUTO_INCREMENT,
            BigAutoField: bigint AUTO_INCREMENT,
            BinaryField: longblob,
            BooleanField: bool,
            CharField: varchar(%(max_length)s),
            CommaSeparatedIntegerField: varchar(%(max_length)s),
            DateField: date,
            DateTimeField: datetime,
            DecimalField: numeric(%(max_digits)s, %(decimal_places)s),
            DurationField: bigint,
            FileField: varchar(%(max_length)s),
            FilePathField: varchar(%(max_length)s),
            FloatField: double precision,
            IntegerField: integer,
            BigIntegerField: bigint,
            IPAddressField: char(15),
            GenericIPAddressField: char(39),
            NullBooleanField: bool,
            OneToOneField: integer,
            PositiveIntegerField: integer UNSIGNED,
            PositiveSmallIntegerField: smallint UNSIGNED,
            SlugField: varchar(%(max_length)s),
            SmallIntegerField: smallint,
            TextField: longtext,
            TimeField: time,
            UUIDField: char(32),

 

Django学习手册 - ORM数据类型

标签:core   的区别   com   tor   blob   手册   duration   正则匹配   load   

原文地址:https://www.cnblogs.com/Anec/p/9526783.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!