flask使用数据库

版权声明:本文为博主原创文章,转载请注明来源 https://blog.csdn.net/beijibing2hao/article/details/83928544

flask使用数据库代码。

#coding=utf-8
from flask import Flask
from flask_sqlalchemy import SQLAlchemy


app = Flask(__name__)

ip = '127.0.0.1'
#设置连接数据库的URL
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://mysql:cy888888@{ip}:3306/Flask_test'.format(ip=ip)  # 主数据库
SQLALCHEMY_BINDS = {
    'other': 'mysql+pymysql://mysql:cy888888@{ip}:3306/other'.format(ip=ip),  # 其它数据库
}

app.config['SQLALCHEMY_BINDS'] = SQLALCHEMY_BINDS  # 绑定其它数据库
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False  # 暂时不知道什么用
# app.config['SQLALCHEMY_ECHO'] = True  #查询时会显示原始SQL语句
db = SQLAlchemy(app)


#定义用户表
class User(db.Model):  # 类名第一个字母大写
    __tablename__ = 'users'  # 表名,一般为类名小写加s
    __bind_key__ = 'other'   # 表要放在哪个数据库
    id = db.Column(db.Integer, primary_key=True, nullable=False, autoincrement=True)  # 主键一般这样写
    username = db.Column(db.String(255), unique=True, nullable=False)
    passwordHash = db.Column(db.String(255), nullable=False)  # 密码要加密一下
    isLogin = db.Column(db.Boolean, default=False, nullable=False)

#定义角色表
class Role(db.Model):
    __tablename__ = 'roles'
    # __bind_key__ = 'Flask_test'  # 放在主数据库中,不需要加这行
    id = db.Column(db.Integer, primary_key=True, nullable=False, autoincrement=True)
    roleName = db.Column(db.String(255), unique=True, nullable=False)
    authority = db.Column(db.Integer, unique=True, nullable=False)        #100:admin  10:operator 1:auditor


if __name__ == '__main__':
    db.drop_all()  # 删除表
    db.create_all() # 创建表
    # host='127.0.0.1'只允许本机访问,如果允许外部访问,可设置为'0.0.0.0'。debug=True为调试模式。更改完代码,不用关闭项目重新启动,即可生效
    app.run(host='127.0.0.1', port=5000,debug=True)

猜你喜欢

转载自blog.csdn.net/beijibing2hao/article/details/83928544