首页 > 解决方案 > 每次我推送到 Heroku 应用程序时,如何阻止它重置数据库?

问题描述

这是我的 app.py 文件的样子:

from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from flask_login import LoginManager
from os import environ

app = Flask(__name__)
app.config["SECRET_KEY"] = "my_secret"
app.config['SQLALCHEMY_DATABASE_URI'] = environ.get('DATABASE_URL?sslmode=require') or 'sqlite:///my_database.db'
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
db = SQLAlchemy(app)

我对烧瓶还很陌生,但我已经成功地将我的应用程序托管在 Heroku 上。但是每次我在本地对应用程序进行更改并将这些更改推送到 Heroku 时,数据库都会重置,也就是说,它只包含我本地 sqlite 数据库包含的内容。

如何避免这种情况并将我的本地数据库和 Heroku 数据库分开,以便我可以在本地使用 sqlite 进行测试并推送更改,而不会覆盖已部署的 Heroku 应用程序中的数据库?

提前致谢!

标签: pythonflaskheroku

解决方案


推荐阅读