Flask操作数据库:
导入flask_sqlalchemy扩展包
更改数据库的配置指定数据库的连接
SQLALCHEMY_DATABASE_URI = ‘mysql//root:python@59.110.172.0/flask_study’
设置每次请求结束后自动提交数据中的改动
SQLALCHEMY_COMMIT_ON_TEARDOWN = True
设置成True,SQLAlchemy将会追踪对象的修改并且发送信号,这需要额外的内存,如果不需要可以禁用它
SQLALCHEMY_TRACK_MODIFICATIONS = True
两种实例化数据库的形式
创建sqlalchemy实例对象:
db = SQLalchemy(app)
另外一种:
db.init_app(app)
定义模型类,继承自db.Model
类中的属性对应数据库表中的列。id为主键,是由Flask-SQLAlchemy管理。db.Column类构造函数的第一个参数是数据库列和模型属性类型。
us = db.relationship(‘User’,backref=‘role’)
创建的是关系映射,数据库中没有对应的实体字段,第一个参数User为多方的类名,backref代表的是方向引用,等号左边给一方使用,backref给多方使用
创建表 db.create_all()
删除表 db.drop_all()
session是数据库会话对象,用来对数据库的常规操作
add_all添加多条数据,add()添加一条数据
提交到数据库,db.session.commit()
def repr(self) 显示一个可读字符串