首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Flask命令时未加载Flask配置

使用Flask命令时未加载Flask配置
EN

Stack Overflow用户
提问于 2019-03-09 22:46:42
回答 4查看 1.3K关注 0票数 0

我尝试使用config.from_pyfileconfig.from_object加载flask配置。为了简单起见,我将config对象放在与我的Flask应用程序对象相同的文件中,并在设置后打印一些配置键。

代码语言:javascript
复制
flask_app = Flask(__name__, instance_relative_config=True)


class Config():
    SQLALCHEMY_DATABASE_URI = "postgresql://root:root@localhost/root"

    FLASK_DEBUG = True
    FLASK_ENV = "development"
    DEBUG = True
    ENV = "development"


flask_app.config.from_object(Config)

#this gets printed in both cases as - True
#but the server is not in debug mode
print(flask_app.config['FLASK_DEBUG'])

现在当我运行服务器时使用-

python run.py

包含运行服务器的主方法的run.py,配置被正确加载并且我能够使用调试模式,但是如果我使用Flask run运行我的服务器,配置不被加载,即使更新的配置被打印出来。

EN

回答 4

Stack Overflow用户

发布于 2019-03-10 00:09:59

您正在尝试使用flask中提供的应用程序工厂运行应用程序。在你的例子中,你必须这样设置你的应用程序函数:

代码语言:javascript
复制
class Config():
    SQLALCHEMY_DATABASE_URI = "postgresql://root:root@localhost/root"

    FLASK_DEBUG = True
    FLASK_ENV = "development"
    DEBUG = True
    ENV = "development"
   

def create_app(config_filename):
    app = Flask(__name__)
    app.config. from_object(Config)

    from yourapplication.model import db
    db.init_app(app)

    #==========================
    #Your other initilazations
    #==========================
    return app

然后运行命令flask run

欲了解更多详情,请访问http://flask.pocoo.org/docs/1.0/patterns/appfactories/

票数 0
EN

Stack Overflow用户

发布于 2019-03-11 21:04:40

在您的Pycharm应用程序中,在右上角,有一个下拉菜单旁边的播放、停止、暂停按钮,从下拉菜单中,您需要进入flask web应用程序设置,在这个新窗口中有一个复选框,您需要选中它来运行调试环境。

如果您使用Pycharm创建初始项目,则此答案尤其相关。

票数 0
EN

Stack Overflow用户

发布于 2020-06-25 04:37:49

如果您正在使用来自不同文件的配置对象,例如config.py,那么您需要设置指向config.py文件的APP_CONFIG_FILE环境变量,然后运行flask run。这为我解决了这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55078512

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档