如何在 `flask db migrate` 中 select 配置

How to select config in `flask db migrate`

我的 .env 中有开发数据库和生产数据库连接字符串。

LOCAL_DB_STRING="local_db"
DB_STRING="production_db"
LOCAL_APP_STATE="development"

当运行应用程序时,使用config.py加载正确的应用程序:

class Config(object):
    SQLALCHEMY_DATABASE_URI = os.environ.get("DB_STRING")

    APP_STATE = os.environ.get("APP_STATE")


class DevConfig(Config):
    SQLALCHEMY_DATABASE_URI = os.environ.get("LOCAL_DB_STRING")
    APP_STATE = os.environ.get("LOCAL_APP_STATE")

然后在 __init__.py create_app()

application.config.from_object(configs[config_name])

我如何使用 flask-migrate 类似的方式 - 选择它用于其命令的数据库 (dev/prod)?

感谢帮助!

已解决:我发现这是我的错误 - 我从 APP_STATE 变量中获取 APP_STATE,但在我的 .env 文件中有 LOCAL_APP_STATE。所以flask db没有得到正确的环境。

我的 .env 文件中有错误 - 使用 LOCAL_APP_STATE 而不是 APP_STATE,这使得 flask db 运行 默认配置。