flask之数据模型flask-sqlalchemy
一、安装数据库连接依赖包
pip install flask-sqlalchemy pip install pymysql
二、项目配置
app/__init__.py
from flask_sqlalchemy import SQLAlchemy app = Flask(__name__) #生成flask对象 app.config["SQLALCHEMY_DATABASE_URI"]="mysql+pymysql://dbuser:password@127.0.0.1:3306/dbname" app.config["SQLALCHEMY_TRACK_MODIFICATIONS"] = True db = SQLAlchemy(app)
三、创建表
app/models.py
from app import db
class User(db.Model):
__tablename__ = "user"
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(100), unique=True)
pwd = db.Column(db.String(100))
email = db.Column(db.String(32), unique=True)
phone = db.Column(db.String(11), unique=True)
info = db.Column(db.Text)
face = db.Column(db.String(255), unique=True)
addtime = db.Column(db.DateTime, index=True, default=datetime.now)
uuid = db.Column(db.String(255), unique=True)
# 会员日志外键关系
userlogs = db.relationship('Userlog', backref='user')
comments = db.relationship('Comment', backref='user')
moviecols = db.relationship('Moviecol', backref='user') # 收藏外键关系
def __repr__(self):
return "<User %r>" % self.name
生成数据库表
if __name__=="__main__":
db.create_all()
四、常用数据类型
#整形
id = db.Column(db.Integer, primary_key=True)
#小整形
is_super = db.Column(db.SmallInteger)
#字符串
name = db.Column(db.String(100), unique=True)
#文本
info = db.Column(db.Text)
#时间and添加索引index
addtime = db.Column(db.DateTime, index=True, default=datetime.now)
#外键关联
class Userlog(db.Model):
__tablename__ = "userlog"
user_id =
db.Column(db.Integer,db.ForeignKey('user.id'))
class User(db.Model):
__tablename__ = "user"
# 会员日志外键关系
userlogs = db.relationship('Userlog', backref='user')

浙公网安备 33010602011771号