Django ORM 定义模型
提示:定义模型字段的范例一、字段范例
[*]常用字段
字段名描述备注AutoFieldint 自增必填参数 primary_key=True,无该字段时,django主动创建一个 BigAutoField,一个model不能有两个AutoField字段(不建议手动指定主键)BooleanField布尔值为True,FalseNullBooleanField布尔值为Null,True,False 已弃用(BooleanField(null=True))CharField字符串必须提供max_length参数TextField文本IntegerField整型SmallIntegerField(短整型),BigIntegerField(长整型),PositiveIntegerField(正整型),PositiveSmallIntegerField(短正整型)DecimalField10进制浮点数max_digits表示总位数,decimal_places表示小数FloatField浮点数DateField日期(YYYY-MM-DD)auto_now:每次修改时修改为当前日期时间。auto_now_add:新创建对象时主动添加当前日期时间(相称于Python中的datetime.date的实例)DatetimeField日期(YYYY-MM-DD HH:MM[:ss[.uuuuuu]])相称于Python中的datetime.datetime实例FileField文件字段数据库本质为路径保存OneToOneField关系字段用于定义一对一关系ForeignKey关系字段用来定义多对一关系ManyToManyField关系字段用于定义多对多关系 二、字段属性
参数描述备注nullTrue:答应存储 NULL 值默认False(控制数据库存储,是否答应存储 NULL 值)blankTrue:答应为空字符串默认False(控制表单验证,是否答应在表单中留空)db_column字段名称通常不需要手动指定db_indexTrue:创建索引默认Falsedefault默认值primary_keyTrue:主键每个模型只能有一个字段设置 primary_key=True,通常 Django 会主动添加 AutoField 或 BigAutoField 作为主键uniqueTrue:唯一值默认Falsemax_length最大长度max_digits浮点型最大长度decimal_places小数点位数auto_now获取的是当前时间choices序列STATUS_CHOICES = [(0, ‘java’), (1, ‘python’)] (在表单中会表现为下拉框)help_text资助文本表单中表现的资助文本,用于提供字段的说明 三、元信息
ORM对应的类里面包罗另一个Meta类,而Meta类封装了一些数据库的信息。主要字段如下:
参数描述db_tableORM在数据库中的表名默认是 app_类名,可以通过db_table可以重写表名index_together联合索引unique_together联合唯一索引ordering字段排序(设置该属性,查询到的结果才可以被reverse())
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]