Flask-SQLAlchemy 的操作

时间:2020-11-28 18:12:52

from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)

db = SQLAlchemy(app)

====================================

(venv) $ python       # 进入python shell

>>> db.create_all() # 创建数据库

>>> admin_role = Role(name 'admin') #创建角色记录

>>> user_john = User(username='John', role='admin_role') #创建用户记录

# 增

>>> db.session.add_all([admin_role, user_john]) # 将对象写进数据库之前,先添加进会话session中

>>> db.session.commit() # 将对象写进数据库

# 删

>>> db.session.delete(mod_role)

>>> db.session.commit()

# 改

重新给属性赋值,再添加进数据库

>>> admin_role.name = 'Administrator' #重新赋值

>>> db.session.add(admin_role)

>>> db.session.commit()

# 查

Flask-SQLAlchemy 为每个模型类都提供了query对象

>>> Role.query.all() #Role 是一个类,表示一张表

>>> User.query.all()

>>> User.query.filter_by(role=user_role).all() #使用过滤器filter_by,进行精确查询