Flask 第七话之数据库 -- Flask-sqlalchemy

一、安装

pip install flask-sqlalchemy

二、数据库连接

1. 导入flask-sqlalchemy

from flask_sqlalchemy import SQLAlchemy

2. 和sqlalchemy一样定义好数据库连接字符串DB_URI

HOSTNAME = '127.0.0.1'
PORT = 3306
DATABASE = 'db_demo'
USERNAME = 'root'
PASSWORD = '123456'

# 链接数据库的字符串,固定格式
DB_URI = "mysql+pymysql://{username}:{password}@{host}:{port}/{db}?charset=utf8".format(
    username = USERNAME,
    password = PASSWORD,
    host = HOSTNAME,
    port = PORT,
    db = DATABASE,
)

3. 将定义好的DB_URI放在app.config中

app.config['SQLALCHEMY_DATABASE_URI'] = DB_URI

4.将app放入SQLAlchemy类中

db = SQLAlchemy(app)

三、创建数据库模型

# 2.实例化
db = SQLAlchemy(app)

class User(db.Model):
    __tablename__ = "user"
    id = db.Column(db.Integer,primary_key=True,autoincrement=True)
    name = db.Column(db.String(50),nullable=False)

class Article(db.Model):
    __tablename__ = "article"
    id = db.Column(db.Integer,primary_key=True,autoincrement=True)
    title = db.Column(db.String(50),nullable=False)
    uid = db.Column(db.Integer,db.ForeignKey("user.id"))

    articles = db.relationship("User",backref=db.backref("articles"))

四、将数据库模型映射到数据库中

# 删除数据库
db.drop_all()
# 映射数据库
db.create_all()

五、使用session查询数据

 u = User(name="aaa")
    a = Article(title="xxx")
    a.articles = u
    db.session.add(a)
    db.session.commit()

 

posted @ 2020-03-02 17:13  我在地球凑人数的日子  阅读(174)  评论(0编辑  收藏  举报