目录

一周学会Flask3-Python-Web开发-SQLAlchemy定义数据库模型

目录

一周学会Flask3 Python Web开发-SQLAlchemy定义数据库模型

锋哥原创的Flask3  Python Web开发 Flask3视频教程:

用来映射到数据库表的Python类通常被称为数据库模型( model ),一个数据库模型类对应数据库中的一个表。定义模型即使用Python类定义表模式,并声明映射关系。所有的模型类都需要继承Flask-SQLAIchemy提供的db.Model基类。

student.py下新建GradeModel模型:

class GradeModel(db.Model):
    """
    班级模型
    """
    __tablename__ = "t_grade"
    id = db.Column(db.Integer, primary_key=True, autoincrement=True)  # 主键id
    name = db.Column(db.String(50), nullable=False)  # 班级名称
    remark = db.Column(db.Text)  # 备注

SQLAlchemy常用的字段类型:

字段说明
Integer整数
String字符串,可选参数length可以用来设置最大长度
Text较长的Unicode文本
Date日期,存储Python的 datetime.date对象
Time时间,存储Python 的datetime.time对象
DateTime时间和日期,存储Python 的datetime对象
Interval时间间隔,存储Python的datetime.timedelta对象
Float浮点数
Boolean布尔值
PickleType存储Pickle列化的Python对象
LargeBinary存储任意二进制数据

常用的SQLAlchemy字段参数:

参数名说明
primary_key如果设为True,该字段为主键
unique如果设为True,该字段不允许出现重复值
index如果设为True,为该字段创建索引,以提高查询效率
nullable确定字段值可否为空,值为True或False,默认值为True
default为字段设置默认值
autoincrement自增,默认False