这个摘自Django官方文档,只保留了教程所提到的以及个人感觉会用到的数据类型及参数选项。...AutoField 类AutoField(** options) 会IntegerField根据可用ID自动递增。您通常不需要直接使用它;如果没有另外指定,主键字段将自动添加到模型中。...请参阅自动设置主键。 这个就相当于我们自己设置的第一列自增的int型的ID吧。...BigAutoField¶ 类BigAutoField(** options) 一个64位整数,非常类似于,AutoField不同之处在于它保证可以匹配从1到的数字9223372036854775807...此字段的默认表单小部件是 NumberInput。
Django连接与建立数据库 连接MySQL数据库 配置文件 找到DATABASES对应的设置,修改为MySQL的配置即可 ?...'HOST':'127.0.0.1', # 连接主机,默认本级 'PORT':3306 # 端口 默认3306 } } 连接数据库...(primary_key=True)#自增字段 且主键 name = models.CharField(max_length=16) age = models.IntegerField(...数据库同步指令 如果没有修改django默认数据库连接,那么会自动生产一个sqlite3的数据库。 第一个指令,创建一个记录。...python manage.py migrate ORM字段与数据库对应关系 'AutoField': 'integer AUTO_INCREMENT', 'BigAutoField': 'bigint
django会为表创建自动增长的主键列,每个模型只能有一个主键列,如果使用选项设置某属性为主键列后django不会再创建自动增长的主键列。...默认创建的主键列属性为id,也可以使用pk,意为primary key. 字段名称中不能出现双下划线,因为这是Django的查询语法之一。...自Django3.2后,可以在settings.py中配置DEFAULT_AUTO_FIELD参数来设置主键的数据类型,默认是DEFAULT_AUTO_FIELD = ‘django.db.models.BigAutoField...’,在Django3.2之前,默认生成的主键数据类型是AutoField....为字段指定默认值 primary_key 若为True,则该字段会成为模型的主键字段,默认值是False,一般作为AutoField的选项使用 unique 如果为True, 这个字段在表中必须有唯一值
常用字段: 在Django中,定义了一些Field来与数据库表中的字段类型来进行映射。以下将介绍那些常用的字段类型。 AutoField: 映射到数据库中是int类型,可以有自动增长的特性。...一般不需要使用这个类型,如果不指定主键,那么模型会自动的生成一个叫做id的自动增长的主键。如果你想指定一个其他名字的并且具有自动增长的主键,使用AutoField也是可以的。...BigAutoField: 64位的整形,类似于AutoField,只不过是产生的数据的范围是从1-9223372036854775807。...---- Field的常用参数: null: 如果设置为True,Django将会在映射表的时候指定是否为空。默认是为False。...因为Django在处理字符串相关的Field的时候,即使这个Field的null=False,如果你没有给这个Field传递任何值,那么Django也会使用一个空的字符串""来作为默认值存储进去。
Django 系列博客(十三) 前言 本篇博客介绍 Django 中的常用字段和参数。 ORM 字段 AutoField int 自增列,必须填入参数 primary_key=True。...常用和非常用字段 AutoField(Field) - int自增列,必须填入参数 primary_key = True BigAutoField(AutoField) - bigint自增列,必须填入参数...,文件上传到指定目录 - 参数: upload_to = "" 上传文件的保存路径 storage = None 存储组件,默认django.core.files.storage.FileSystemStorage...数据库中字段的默认值 primary_key 数据库中字段是否为主键 db_index 数据库中字段是否可以建立索引 unique 数据库中字段是否可以建立唯一索引...一对一的关联关系多用在当一张表的不同字段查询频次差距过大的情况下,将本可以存储在一张表的字段拆开放置在两张表中,然后将两张表建立一对一的关联关系。
常用字段 (1) AutoField 自增的整型字段,必填参数primary_key=True,则成为数据库的主键,无该字段时,django会自动创建主键id字段。...(2) BigAutoField 一个64位整数,非常类似与AutoField,但是范围是从1~9223372036854775807。...默认表单格式为TextInput。 (18) TextField 文本字段。默认表单小部件是Textarea,如果指定max_length属性,将反映在Textarea自动生成的表单字段中。...是通用的唯一标识符,可以很好的替代带有的 primary_key的AutoField字段。...当删除由a引用的对象时,Django将模拟on_delete参数指定的SQL约束的行为。
大家好,又见面了,我是你们的朋友全栈君。 Django中的ORM Django项目使用MySQL数据库 1....id字段是自动添加的,如果你想要指定自定义主键,只需在其中一个字段中指定 primary_key=True 即可。...Django支持MySQL5.5及更高版本。 Django ORM 常用字段和参数 常用字段 AutoField int自增列,必须填入参数 primary_key=True。...字段合集(争取记忆) AutoField(Field) - int自增列,必须填入参数 primary_key=True BigAutoField(AutoField)...null(前提FK字段需要设置为可空) models.SET_DEFAULT 删除关联数据,与之关联的值设置为默认值(前提FK字段需要设置默认值) models.SET 删除关联数据, a.
其它字段 AutoField(Field) - int自增列,必须填入参数 primary_key=True BigAutoField(AutoField) -...storage = None 存储组件,默认django.core.files.storage.FileSystemStorage width_field=None,...---- default 为该字段设置默认值 AutoField参数 primary_key 设置主键。int自增列,必须填入参数 primary_key=True。...(to='表名') ---- to_field 设置要关联的表的字段,不指定的话默认关联指定表的主键。...null(前提FK字段需要设置为可空) models.SET_DEFAULT 删除关联数据,与之关联的值设置为默认值(前提FK字段需要设置默认值) models.SET 删除关联数据, 与之关联的值设置为指定值
如果使用SQLite,数据库文件将存放在电脑上,这种情况下,NAME应该为绝对路径,包含数据库文件的文件名。默认值如下,把数据库文件存放在项目根目录下。...因为,默认的,Django为每个模块设置一个field: id = models.AutoField(primary_key=True) 如果想自己指定一个自定义的主键列,则必须按上述设置,显示指定字段名称...IntegerField,根据可获取的ID列值,自增 参数:verbose_name,个人推断,所有Field类型应该都有该参数,用于设置字段名称 BigAutoField 64位整型,类似AutoField...对于主键AutoField来说,UUIDFeild是个很好的选择。...如果设置了该选项值,那么默认的表单组件将变为一个select box,而不是标准是text field,且将被限制从给定choice中选择choice。
(Field) - int自增列,必须填入参数 primary_key=True BigAutoField(AutoField) - bigint自增列,必须填入参数 primary_key...,Django字段默认的值为: 'AutoField': 'integer AUTO_INCREMENT', 'BigAutoField': 'bigint AUTO_INCREMENT...,Django Admin以及ModelForm中提供对UUID格式的验证 FilePathField(Field) - 字符串,Django Admin以及ModelForm中提供读取文件夹下文件的功能...storage = None 存储组件,默认django.core.files.storage.FileSystemStorage ImageField(FileField...存储组件,默认django.core.files.storage.FileSystemStorage width_field=None, 上传图片的高度保存的数据库字段名
※不同的虚拟环境指定不同版本,实现本地多版本兼容图片打开project,terminal 已经默认进入到虚拟环境下。...终止虚拟环境:任意路径下执行【deactivate】启动虚拟环境:进入到虚拟环境路径下【cd venv\Scripts】【activate】图片3,虚拟环境下,安装Django,不指定版本的话,默认安装最新版本...,master_product_modelmodel作成参考Django model,baseModel基类, migrate移行图片说明:model不指定主键的情况,会自动加上id作为表的主键,参考移行文件主键类型在...setting.py 设定DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField' # 若用postgre,数据类型为bigserialDEFAULT_AUTO_FIELD...= 'django.db.models.AutoField' # 若用postgre,数据类型为serial图片8,启动服务(venv) D:\PycharmProjects\djangoTutorial
模型中常用字段 字段 说明 AutoField 一般不需要使用这个类型,自增长类型,数据表的字段类型为整数,长度为11位 BigAutoField 自增长类型,数据表的字段类型为bigint,长度为20...uuid是一个32位的全球唯一的字符串,一般用来作为主键。 URLField 类似于CharField,只不过只能用来存储url格式的字符串。并且默认的max_length是200。...因为Django在处理字符串相关的Field的时候,即使这个Field的null=False,如果你没有给这个Field传递任何值,那么Django也会使用一个空的字符串""来作为默认值存储进去。...并且不支持列表/字典/集合等可变的数据结构。 primary_key 是否为主键。默认是False。 unique 在表中这个字段的值是否唯一。一般是设置手机号码/邮箱等。...设置模型所对应的数据表名称,若未指定,则默认使用模型名来作为数据库表名 managed 默认值为True,支持Django命令执行数据迁移,若为False,则不支持数据迁移功能 ordering 属性值为列表
1. django中的常用字段 1. AutoField 映射到数据库中是int类型,可以有自动增长的特性。一般不需要使用这个类型,如果不指定主键,那么模型会自动的生成一个叫做id的自动增长的主键。...如果你想指定一个其他名字的并且具有自动增长的主键,使用AutoField也是可以的。 2....BigAutoField 64位的整形,类似于AutoField,只不过是产生的数据的范围是从1-9223372036854775807。 3....在django中是有时区的概念的,使用时要考虑到时区的问题,默认使用的是 UTC时区,分为 navie(没时区) 和 aware(有时区),如果项目不是国际的,可以我们将时区关闭,使用本地的时间。...并且默认的max_length是200。 2. 字段中的常用属性 1. null 如果设置为True,Django将会在映射表的时候指定是否为空。默认是为False。
mysql: create database grafana; create user grafana@'%' IDENTIFIED by 'grafana';...
将ubuntu的默认编辑器从nano修改为vim 在使用ubunut时经常会遇到打开一些系统文件的时候,要么默认使用nano打开,要么会让你选择编辑器,例如在执行visudo命令的时候。...通过下面的方法就可以把默认编辑器直接修改为vim,以后打开所有文件默认都是使用vim。.../usr/bin/editor 是替代链路的位置。 editor 是主链接的名称,即你要设置的别名。 /usr/bin/vim 是你希望成为可选项的程序路径。 ...100 是优先级,数值越高表示优先级越高,当有多个选项时,优先级最高的会被设为默认。...应该已经成为 editor 的默认程序。
告诉Django用pymysql代替默认的MySQLDB 连接MySQL数据库 在项目/__init__.py文件中,写下面两句: import pymysql # 告诉...Django用pymysql来代替默认的MySQLdb pymysql.install_as_MySQLdb() 4....=True) # 自增的ID主键 # 创建一个varchar(64)的唯一的不为空的字段 name = models.CharField(max_length=64, null...IntegerField -->整数类型 字段的合集: AutoField(Field) - int自增列,必须填入参数 primary_key=True BigAutoField...storage = None 存储组件,默认django.core.files.storage.FileSystemStorage width_field=None,
关于求值发生的准确时间,参见何时计算查询集。 缓存机制 每个查询集都包含一个缓存来最小化对数据库的访问。理解它是如何工作的将让你编写最高效的代码。...叫做queryset缓存空间 在一个新创建的查询集中,缓存为空。首次对查询集进行求值 —— 同时发生数据库查询 ——Django 将保存查询的结果到查询集(非简单查询的查询结果,简单查询往下看。)...的缓存中并返回明确请求的结果(例如,如果正在迭代查询集,则返回下一个结果)。接下来对该查询集 的求值将重用缓存的结果。 请牢记这个缓存行为,因为对查询集使用不当的话,它会坑你的。...也可以通过depth参数指定递归的深度,Django会自动缓存指定深度内所有的字段。如果要访问指定深度外的字段,Django会再次进行SQL查询。...也接受无参数的调用,Django会尽可能深的递归查询所有的字段。但注意有Django递归的限制和性能的浪费。 Django >= 1.7,链式调用的select_related相当于使用可变长参数。
简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系数据库中。 ORM在业务逻辑层和数据库层之间充当了桥梁的作用。 2. ORM由来 让我们从O/R开始。...id字段是自动添加的,如果你想要指定自定义主键,只需在其中一个字段中指定 primary_key=True 即可。...字段 AutoField(Field) - int自增列,必须填入参数 primary_key=True BigAutoField(AutoField)...,Django字段默认的值为: 'AutoField': 'integer AUTO_INCREMENT', 'BigAutoField': 'bigint AUTO_INCREMENT...).delete() # 删除指定条件的数据 # 改 models.Tb1.objects.filter(name='seven').update(gender='0') # 将指定条件的数据更新
id字段是自动添加的,如果你想要指定自定义主键,只需在其中一个字段中指定 primary_key=True 即可。...Django支持MySQL5.5及更高版本。 Django中ORM常用的字段和参数 常用的字段 AutoField:int自增型,必须填入参数 primary_key = True 。...字段合集 AutoField(Field) - int自增列,必须填入参数 primary_key=True BigAutoField(AutoField) -...附ORM字段与数据库实际字段的对应关系 对应关系: 'AutoField': 'integer AUTO_INCREMENT', 'BigAutoField': 'bigint AUTO_INCREMENT...在这个时间Django将管理数据库中表的生命周期 如果为False的时候,不会对数据库表进行创建、删除等操作。可以用于现有表、数据库视图等,其他操作是一样的。
('price')) # 3.将所有书的名称后面全部加上 "爆款" 后缀,操作字符串数据需要借助于Concat方法 from django.db.models.functions import Concat...银行转账就是利用了事务的这一特点。 Django中的事务 还未进行详细讲解 orm字段及参数 常用字段: 字段 描述 AutoField int自增列,必须填入参数 primary_key=True。...Django字段集合 AutoField(Field) - int自增列,必须填入参数 primary_key=True BigAutoField(AutoField)...storage = None 存储组件,默认django.core.files.storage.FileSystemStorage width_field=None,...的字段与数据库字段的对应关系: 对应关系: 'AutoField': 'integer AUTO_INCREMENT', 'BigAutoField': 'bigint AUTO_INCREMENT
领取专属 10元无门槛券
手把手带您无忧上云