Flask配置MySQL数据库使用

文章目录

  • 一、创建Flask
  • 二、安装sqlalchemy
  • 三、创建配置文件config.py
  • 四、绑定配置文件
  • 参考资料

一、创建Flask

pip install flask

成功安装之后app.py如下所示:

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'hello world'

if __name__ == '__main__':
    app.run()

二、安装sqlalchemy

  • sqlAlchemy:一个关系型数据库框架,它提供了高层的 ORM 和底层的原生数据库的操作。sqlALchemy 实际上是对数据库的抽象,让开发者不用直接和 sql 语句打交道,而是通过 Python 对象来操作数据库,在舍弃一些性能开销的同时,换来的是开发效率的较大提升。

  • Flask-SQLALchemy:一个简化了 sqlAlchemy 操作的flask扩展。
    官方文档地址:http://docs.jinkan.org/docs/flask-sqlalchemy

pip install sqlalchemy

三、创建配置文件config.py

在app.py的同级目录下创建配置文件config.py,配置文件的内容如下:

# MySQL数据库配置
class BaseConfig:
	DIALECT = 'mysql'
	DRIVER = 'pymysql'
	HOST = '127.XXX.XXX.XXX'
	PORT = '3306'
	USERNAME = 'root'
	PASSWORD = '******'
	DATABASE = 'database_name'
	
	# mysql不识别utf-8,需要直接写成utf8
	SQLALCHEMY_DATABASE_URI = "{}+{}://{}:{}@{}:{}/{}?charset=utf8".format(DIALECT, DRIVER, USERNAME, PASSWORD, HOST, PORT, DATABASE)
	# SQLALCHEMY_DATABASE_URI = f"{DIALECT}+{DRIVER}://{USERNAME}:{PASSWORD}@{HOST}:{PORT}/{DATABASE}?charset=utf8"
	SQLALCHEMY_TRACK_MODIFICATIONS = True
	# SQLALCHEMY_ECHO = True

四、绑定配置文件

导入config文件中的BaseConfig类,并通过app.config添加配置文件。

from flask import Flask
from config import BaseConfig
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)

#添加配置文件
app.config.from_object(BaseConfig)

#初始化扩展,传入app 创建db
db = SQLAlchemy(app)

# 测试是否连接成功
with app.app_context():
    with db.engine.connect() as conn:
        rs = conn.execute("select 1")
        print(rs.fetchone())  # (1,)
 
if __name__ == '__main__':
	app.run()

#添加配置文件
app.config.from_object(BaseConfig)
#初始化扩展,传入app 创建db
db = SQLAlchemy(app)

通过上述两行代码可以完成app和数据的关联,并生成一个可以操作app数据库的SQLAlchemy实例db。

参考资料

  • https://www.cnblogs.com/hhaostudy/p/15911630.html

你可能感兴趣的:(flask,数据库,mysql)