import os from flask import Flask from applications.common.script import admin_cli from applications.extensions import init_plugs from applications.view import init_view from applications.configs import config def create_app(config_name=None): app = Flask(os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))) if not config_name: # 尝试从本地环境中读取 config_name = os.getenv('FLASK_CONFIG', 'development') # 引入数据库配置 app.config.from_object(config[config_name]) # 注册各种插件 init_plugs(app) # 注册路由 init_view(app) # 注册命令 app.cli.add_command(admin_cli) if os.environ.get('WERKZEUG_RUN_MAIN') == 'true': logo() return app def logo(): print(''' _____ _ _ ______ _ _ | __ \ /\ | | (_) | ____| | | | | |__) |__ __ _ _ __ / \ __| |_ __ ___ _ _ __ | |__ | | __ _ ___| | __ | ___/ _ \/ _` | '__| / /\ \ / _` | '_ ` _ \| | '_ \ | __| | |/ _` / __| |/ / | | | __/ (_| | | / ____ \ (_| | | | | | | | | | | | | | | (_| \__ \ < |_| \___|\__,_|_| /_/ \_\__,_|_| |_| |_|_|_| |_| |_| |_|\__,_|___/_|\_\\ ''')