app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True的使用代码举例
时间: 2023-06-07 16:09:43 浏览: 82
可以使用以下代码来使用app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True:
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
# 创建Flask应用程序实例
app = Flask(__name__)
# 数据库配置
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://username:password@host:port/database_name'
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True
# 初始化数据库
db = SQLAlchemy(app)
# 创建用户数据模型
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(64))
password = db.Column(db.String(128))
def __repr__(self):
return '<User %r>' % self.username
# 主函数
if __name__ == '__main__':
app.run()
相关问题
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True是什么意思
这是Flask框架中使用的一个配置选项,用来指示SQLAlchemy是否追踪对象的修改并发出信号。如果将其设置为True,则SQLAlchemy将会自动追踪修改并发出信号,但这样做会占用一定的内存和计算资源,因此需要权衡利弊决定是否开启。
app = Flask(__name__, template_folder="../templates", static_folder="../static") app.config["SQLALCHEMY_DATABASE_URI"] = "mysql+mysqlconnector://root:123123@0.0.0.0:3306/mydb" # 设置每次请求结束后会自动提交数据库的改动 app.config['SQLALCHEMY_COMMIT_ON_TEARDOWN'] = True app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True db = SQLAlchemy(app)
这段代码使用 Flask 框架创建了一个应用程序对象 `app`。其中,`template_folder` 参数指定了模板文件的目录路径,`static_folder` 参数指定了静态文件的目录路径。
接下来,通过 `app.config` 属性配置了数据库的连接信息。`SQLALCHEMY_DATABASE_URI` 参数指定了数据库的连接地址,这里使用的是 MySQL 数据库,并指定了用户名、密码、主机和端口等信息。
然后,通过设置 `SQLALCHEMY_COMMIT_ON_TEARDOWN` 参数为 `True`,可以在每次请求结束后自动提交数据库的改动。同时,设置 `SQLALCHEMY_TRACK_MODIFICATIONS` 参数为 `True`,可以追踪数据库模型的修改并发送信号。
最后,通过创建 `SQLAlchemy` 对象 `db`,将应用程序对象 `app` 与数据库连接起来,以便进行数据库操作和 ORM(对象关系映射)操作。