执行flask init-db报错:Error: Could not locate a Flask application. Use the 'flask --app' option, 'FLASK_APP' environment variable, or a 'wsgi.py' or 'app.py' file in the current directory.
一、问题描述
flask初始化数据库文件的时候执行flask init-db报错Error: Could not locate a Flask application. Use the 'flask --app' option, 'FLASK_APP' environment variable, or a 'wsgi.py' or 'app.py' file in the current directory,具体报错截图如下:
二、问题解决
这个问题真实让人头大,百度上搜不到对应的解决方案,对于flask初始化数据库官方文档说的也很模糊,直接写了个执行命令,因此看的不是很明白,所以在初始化数据库的时候做的操作是:
1、关闭之前启动的服务器,打开新的终端执行以下命令:
%export FLASK_APP=flaskr % export FLASK_ENV=development %flask run
2、又打开一个终端cd到包目录下执行了flask inti-db 命令,报了上面的错误。显然这个是错误的步骤。
三、解决方案
对于这个问题想了很久才想明白自己错在哪里,正确的执行步骤应该是:
1、执行以下命令
%export FLASK_APP=flaskr % export FLASK_ENV=development %flask init-db
2、执行成功后会在instance文件夹下创建一个flaskr.sqlite文件,真确结果展示如下图: