Python全系列 教程
3567个小节阅读:5931k
目录
鸿蒙应用开发
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
模型类的属性对应数据库中表的字段,都是对应的Field类的实例
默认会自动创建一个自增,主键的id列
如果指定了 primary_key 为其它列,那么不会自动创建id列
例如:
xxxxxxxxxx
id = models.AutoField(primary_key=True)
官方文档:https://docs.djangoproject.com/zh-hans/4.1/ref/models/fields/#field-types
字段名 | 作用 |
---|---|
AutoField | 自增一个IntegerField,根据可用的 ID 自动递增 |
BooleanField | 该字段的默认表单部件是checkbox,默认值是 None |
CharField | 一个字符串字段 |
DateField | 一个日期,在 Python 中用一个 datetime.date 实例表示 |
DateTimeField | 一个日期和时间,在 Python 中用一个 datetime.datetime 实例表示 |
FloatField | 在 Python 中用一个 float 实例表示的浮点数 |
SmallIntegerField | 就是一个 IntegerField, -32768 到 32767 的值 |
IntegerField | 一个整数。从 -2147483648 到 2147483647 的值 |
TextField | 一个大的文本字段。该字段的默认表单部件是一个Textarea |
特别的说明
xxxxxxxxxx
import uuid
from django.db import models
class MyUUIDModel(models.Model):
# uuid.uuid4 千万别写成 uuid.uuid4() ,不要写 ()
id = models.UUIDField(primary_key=True, default=uuid.uuid4)
max_length:字段最大长度,用于字符串等,字符串类型CharField必须设置该值
null:如果True,Django将在数据库中存储NULL空值。默认是False
blank:如果True,该字段被允许为空白("")。默认是False。
注意
这不同于null。null纯粹是与数据库相关的,而blank与验证相关。如果一个字段有blank=True,表单验证将允许输入一个空值。如果一个字段有blank=False,该字段将是必需的
choices:
示例:YEAR_IN_SCHOOL_CHOICES = (('FR', 'Freshman'),('SO', 'Sophomore'),('JR', 'Junior'),('SR', 'Senior'),('GR', 'Graduate')) ,
中文示例:SEX_CHOICES=((1, '男'),(2, '女'))
元组中的第一个元素是将存储在数据库中的值,第二个元素是将在页面中显示的值,最常见用于下拉选择框select
default:字段的默认值
help_text:用于显示额外的“帮助”文本
primary_key:如果True,这个字段是模型的主键,默认是False
unique:如果True,该字段在整个表格中必须是唯一的
verbose_name:详细字段名,不指定则是属性名的小写,并且用 空格 替换 '_'
实时效果反馈
1. 关于Django模型, 字段说法错误的是?
A 模型类的属性对应数据库中的字段
B AutoField是一个自增的IntegerField
C 主键字段只能自动生成
D 字段可以通过参数设置额外功能
答案
1=>C