flask.cli.NoAppException:提供的文件/路径(政治)似乎不存在

时间:2017-04-25 03:52:19

标签: python flask jinja2

我现在已经玩了几个晚上了,并且无法弄清楚,所以我转向你。

我已经导出了我的API密钥和FLASK_APP环境变量,我确保已经通过pip安装了所有需求,但是当我烧瓶运行时,我收到以下警告:

Error: The file/path provided (politics) does not appear to exist.  Please verify the path is correct.  If app is not on PYTHONPATH, ensure the extension is .py

这是我的代码(此时它是非常基本的,但它应该可以工作)

import os
import re
import sqlite3
from flask import Flask, jsonify, render_template, request, url_for, g
from flask_jsglue import JSGlue

app = Flask(__name__)
JSGlue(app)

# ensure responses aren't cached
if app.config["DEBUG"]:
    @app.after_request
    def after_request(response):
        response.headers["Cache-Control"] = "no-cache, no-store, must-revalidate"
        response.headers["Expires"] = 0
        response.headers["Pragma"] = "n4o-cache"
        return response

# configure get_db = sqlite3
DATABASE = 'propub.db'


def get_db():
    db = getattr(g, '_database', None)
    if db is None:
        db = g._database = sqlite3.connect(DATABASE)
    return db


@app.teardown_appcontext
def close_connection(exception):
    db = getattr(g, '_database', None)
    if db is not None:
        db.close()


@app.route('/', methods=["GET", "POST"])
def home():
    return render_template("index.html")


@app.route('/map', methods=["GET", "POST"])
def map():
    if not os.environ.get("API_KEY"):
        raise RuntimeError("API_KEY not set")
    return render_template("map.html", key=os.environ.get("API_KEY"))


if __name__ == '__main__':
    app.run()

我还在调试模式下运行了烧瓶,并包含调试器输出的屏幕截图,希望也可能有所帮助:

screen shot

我知道我目前有未使用的模块,但我的理解是此时无关紧要。

1 个答案:

答案 0 :(得分:0)

我在使用Flask 'flaskr'教程时遇到了这个问题。我不得不找到并杀死烧瓶过程并通过运行烧瓶命令重启它:

$flask initdb#特定于教程

$flask run