Python /烧瓶:ImportError:无法从“核心”导入名称“ app”

时间:2019-07-08 04:01:07

标签: python flask python-import

我已经坚持了3个小时,而我在Google上查找的解决方案根本没有帮助。我正在使用Flask,我的文件结构是这样:

| run.py
|
| core |
     __init__.py
    routes.py
    templates |
             ... (html)
    static |
          ... (js/css)

我不确定何时会发生错误,但这是我的所有导入文件(它们在每个文件的顶部列出):

run.py中:

from core import app

__init.py__中:

from core import app, routes
from flask import Flask
from flask_htmlmin import HTMLMIN

from flask_dance.contrib.google import make_google_blueprint
import os

routes.py中:

from flask import render_template, redirect, url_for, request, abort
from core import app, blueprint
from werkzeug.exceptions import HTTPException

from flask_dance.contrib.google import google
import requests

Error

1 个答案:

答案 0 :(得分:0)

最好的方法是使用蓝图。它使您的应用程序模块化并且易于使用。在此处查看文档Modular applications with Blueprints 总之,您可以让您的应用程序与此设置一起使用: 资料夹结构: ├──|core │   ├── __init__.py │   ├── routes.py │   ├── static │   └── templates ├── run.py └── venv 初始化 .py


from flask import Flask
from .routes import main
from flask_htmlmin import HTMLMIN 

from flask_dance.contrib.google import make_google_blueprint
import os

def create_app(config_obj=None):
    app = Flask(__name__)
    app.config.from_object(config_obj)

    # register the blueprints
    app.register_blueprint(main)

    return app

run.py


from core import create_app

class Config:
    DEBUG = True

app = create_app(Config)

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

routes.py


from flask import Blueprint

main = Blueprint('main', __name__)

@main.route('/')
def index():
    return 'My awesome index page!'
相关问题