首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

django模型

这种方法告诉Django,每个字段中保存着什么类型数据 字段名:每个Field 实例名字(例如username)就是字段名字,并且机器可读格 式。...字段自述名 每个字段类型都接受一个可选位置参数——字段自述名,如果没有给定自述名, Django将根据字段属性名称自动创建自述名——将属性名称下划线替换成空格 ForeignKey、 ManyToManyField...blank=True,表单验证允许该字段为空 blank=False,该字段就是必须 字段选项——choices 由二元组组成一个迭代对象(如列表或元组),用来给字段提供选择项,如果设置了 choices...——unique 如果该设置为True,这个字段在整张表中必须唯一 模型meta选项 使用内部class Meta 定义模型元数据,例如: from django.db import models...User.objects.values("id", "username") values_list(返回一个元组) 与values()类似,只是在迭代时返回元组而不字典。

3.1K20
您找到你想要的搜索结果了吗?
是的
没有找到

Django项目知识点(三)

本文一篇完全介绍django最重要model 6.django model 模型数据唯一而且准确信息来源。它包含正在储存数据重要字段和行为。一般来说,每一个模型都映射一个数据库表。...这个选项指定,模型复数形式是什么,比如verbose_name_plural = "学校"如果不指定Django会自动在模型名称后加一个’s’ 字段类型 models.CharField 字符串类型... Admin 中添加数据时允许空,可以不填。...自动创建---无论添加或修改,都是当前操作时间 auto_now_add 自动创建---永远创建时时间 choices 一个二维元组被用作choices,如果这样定义,Django会select...box代替普通文本框, 并且限定choices元组 GENDER_CHOICE = ( (u'M', u'Male'), (u'F', u'Female

1.8K30

django 1.8 官方文档翻译:5-1-4 内建Widget

MultiWidget 具有一个必选参数: widgets 一个包含需要Widget 迭代对象。...子类必须实现 这个方法,而且因为可能为空,实现必须要防卫这点。 “解压”基本原理需要“分离”组合表单字段为每个Widget 。...外层 将带有定义在Widget 上id 属性。 Changed in Django 1.7: 当迭代单选按钮时,label 和input 标签分别包含for 和id 属性。...Changed in Django 1.7: 当迭代单选按钮时,label 和input 标签分别包含for 和id 属性。 每个单项按钮具有一个id_for_label 属性来输出元素ID。...一个处理多个隐藏Widget Widget,用于为一个列表字段。 choices 当表单字段没有choices 属性时,这个属性可选

5K40

Django模型最佳实践

模型定义参考 字段 对字段名称限制 字段名不能Python保留字,否则会导致语法错误 字段名不能有多个连续下划线,否则影响ORM查询操作 Django模型字段类 字段类 说明 AutoField...自增ID字段 BigIntegerField 64位有符号整数 BinaryField 存储二进制数据字段,对应Pythonbytes类型 BooleanField 存储True或False CharField...,是否允许为NULL,默认为False choices 设定字段选项,各元组第一个设置在模型上,第二人类可读 db_column 字段对应到数据库表中列名,未指定时直接使用字段名称...unique 设置为True时,表中字段必须唯一 verbose_name 字段在后台模型管理显示名称,未指定时使用字段名称 ForeignKey属性 limit_choices_to:一个...on_delete:外键关联对象被删除时对应动作,可取包括django.db.models中定义: CASCADE:级联删除。

2.2K40

00x: Django models.Model详解

choices: 一个迭代元祖,用来作为字段内容选择。若这个给定,默认表单插件将会变成一个单选框而不是简单文本字段,并且单选框中选项数目由给定choices来限定。...一个标准choices列表和下面的形式类似: 每个元组第一个元素要存储在数据库中内容。第二个元素用于在显示控件上展示。...给定一个model实例,用于显示choices可以通过使用get_FOO_display()方法来获取,例如: default: 这个选项用于设置该字段默认。...: 字段名称不能包含超过两个下划线,因为这会与Django查找语法起冲突。...Meta选项 通过使用内部类Meta来设置model元数据,例子如下: Model元数据“任何非字段数据”,例如ordering选项,数据表名字(db_table),或者人类可读单复数名称

1.6K20

Django之Model操作数据库详解

} } 配置好数据库信息后还必须安装数据库驱动程序,Django默认导入mysql驱动程序MySQLdb,然而MySQLdb对于py3支持不全,所以这里使用PyMySQL。...,运行后得到并不是一系列model实例化对象,而是一个迭代字典序列 exclude(**kwargs) 包含了与所给筛选条件不匹配对象 order by(*field)...如果指定字段,每个字典将只包含指定字段键/。如果没有指定字段,每个字典将包含数据库表中所有字段键和。...'name': 'Linxiao'}]> 8.values_list():     values_list(*fields, flat=False)         与values()类似,只是在迭代时返回元组而不是字典...每个元组包含传递给values_list()调用相应字段或表达式,因此第一个项目第一个字段等。

7K10

Python全栈100天学习笔记】Day41 Django深入理解框架

模型定义参考 字段 对字段名称限制 字段名不能Python保留字,否则会导致语法错误 字段名不能有多个连续下划线,否则影响ORM查询操作 Django模型字段类 字段类 说明 AutoField...,是否允许为NULL,默认为False choices 设定字段选项,各元组第一个设置在模型上,第二人类可读 db_column 字段对应到数据库表中列名,未指定时直接使用字段名称...unique 设置为True时,表中字段必须唯一 verbose_name 字段在后台模型管理显示名称,未指定时使用字段名称 ForeignKey属性 limit_choices_to:一个...db_tablespace 模型使用数据表空间 default_related_name 关联对象回指这个模型时默认使用名称,默认为_set get_latest_by 模型中排序字段名称...index_together 设定一起建立索引多个字段名 verbose_name 为对象设定人类可读名称 verbose_name_plural 设定对象复数名称 查询参考 按字段查找可以用条件

2.2K30

Django(14)模型中常用属性(超详细)

在数据库层面tinyint类型。如果没有指定默认,默认None CharField 字符类型必须要传递max_length这个关键字参数 DateField 日期类型。...在Pythondatetime.date类型,可以记录年月日。在映射到数据库中也是date类型。...db_index 默认为False,若为True,则以此字段来创建数据库索引 choices 中文示例:SEX_CHOICES=((1, '男'),(2, '女')),元组第一个元素将存储在数据库中...设置模型所对应数据表名称,若未指定,则默认使用模型名来作为数据库表名 managed 默认为True,支持Django命令执行数据迁移,若为False,则不支持数据迁移功能 ordering 属性为列表...,将模型数据以某个字段进行排序 verbose_name 属性为字符串,设置模型直观可读名称并以复数形式表示 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/165809

81330

Django 学习笔记之模型(上)

Model Django 做了一层包装以便我们更加方便地使用类, 它其中包含了所有数据库交互方法。上面代码中每个类相当于单个数据库表,每个属性也是这个表中一个字段。...Django 内置了几十种内置字段类型。常用类型如下: 1) AutoField:一个根据实际ID自动增长 IntegerField 。如果表中没有设置主键时,将会自动添加一个自增主键。...你可以通过显式地指定 db_column 来改变该字段名称,不过,除非你想自定 义 SQL ,否则没必要更改数据库名称。 它第一个参数必须传入该模型关联类。...3.4 字段选项 有些字段会有些特殊参数,但所有字段类型都又些通用可选选项。先是常用可选选项。 1)null :如果该参数设置为 True,Django将会把数据库中保存为 NULL。...4)unique:如果该设置为 True, 这个数据字段在整张表中必须唯一。 5)default:设置该字段默认。 6)由二项元组构成一个迭代对象(列表或元组),用来给字段提供选择项。

1.7K30

django 1.8 官方文档翻译: 1-2-1 编写你第一个Django应用,第1部分

你可以在 django-admin.py and manage.py 中查看关于 manage.py 所有的细节。 内层 mysite/ 目录你项目中实际 Python 包。...这是一个普通 Python 模块,包含了代表 Django 设置模块级变量。 更改 DATABASES 中 ‘default’ 下以下键,以匹配您数据库连接设置。...在你 Python 代码中会使用这个,而你数据库会将这个作为表列名。 你可以在初始化 Field 实例时使用第一个位置可选参数来指定人类可读名字。...在本例中,我们仅定义了一个符合人类习惯字段名 Poll.pub_date 。对于模型中其他字段,机器名称就已经足够替代人类名称了。 一些 Field 实例需要参数。...这些 sql 命令其实并没有在你数据库中运行过 - 它只是在屏幕上显示出来,以便让你了解 Django 认为什么样 SQL 必须

95820

Django使用】10大章31模块md文档,第5篇:Django模板和数据库使用

当你考虑开发现代化、高效且扩展网站和Web应用时,Django一个强大选择。...模板变量变量名必须由字母、数字、下划线(不能以下划线开头)和点组成,语法如下:{{ 变量 }}模板变量可以使python内建类型,也可以是对象。...变量|过滤器:参数列举几个如下:safe,禁用html转义(显示html标签样式,而不是字符串)length,长度,返回字符串包含字符个数,或列表、元组、字典元素个数。...属性定义模型类属性与表字段一一对应定义属性时,需要指定字段类型,通过字段类型参数指定选项,格式如下:属性名 = models.字段类型(字段选项)属性名不能python保留关键字属性名不能使用连续下划线...字段选项选项默认描述是否要迁移修改表结构nullFalseTrue表示表字段允许为空uniqueFalseTrue表示表字段不能重复db_column属性名称表字段名称是primary_keyFalseTrue

15710

django orm 重点大全

2.orm字段必须要知道一些属性 (0)null 如果为True,Django 将用NULL 来在数据库中存储空。...(4)unique 如果该设置为 True, 这个数据字段在整张表中必须唯一 (5)choices 由二元组组成一个迭代对象(例如,列表或元组),用来给字段提供选择项。...(‘JR‘, ‘Junior‘), (‘SR‘, ‘Senior‘), (‘GR‘, ‘Graduate‘), ) 每个元组第一个元素,存储在数据库中;第二个元素在管理界面或...在一个给定 model 类实例中,想得到某个 choices 字段显示,就调用 get_FOO_display 方法(这里 FOO 就是 choices 字段名称 )。...,然后再添加就比较容易了,传说中三种方式,貌似实际应用中只有save()方式可以使用,原因无他,只有save()能触发django定义一些钩子函数,留下数据更改日志信息,比较安全。

77040

Django小技巧22: 设计一个好模型

Python Company.companies.filter(name='Google') 这样看起来代码就很有可读性了 Model 定义顺序 Django Coding Style 建议内部类,方法和属性顺序为...: 如果字段有choices参数, 则每个选项定义为元祖中元祖.并使用全大写名称作为属性。...related_name 可以为反向关系定义一个有意义名称 经验法则: 如果你不确定related_name是什么, 请使用包含所定义ForeignKey模型复数形式....blank: 验证相关, 当调用form.is_valid()时, 将会判断是否为空. 虽然两者有区别的, 但一个拥有null=True和blank=False字段完全没有问题。...这里 Django 支持所有字段类型. 如果你对代码风格规范感兴趣, 可以读一读Django Coding Style. 当然也可以看一看Flake8.

86620
领券