def create_app(object_name): app = Flask(__name__) app.config.from_object(object_name) CORS(app) assets_env.init_app(app) assets_env.register('main_css', main_css) cache.init_app(app) csrf = CSRFProtect(app) csrf.exempt(api_blueprint) csrf.init_app(app) db.init_app(app) login_manager.init_app(app) app.register_blueprint(blog_blueprint) app.register_blueprint(control_blueprint) app.register_blueprint(api_blueprint) app.register_blueprint(upload_blueprint) app.add_template_filter(format_time, 'format_time') app.add_template_filter(html_to_text, 'html_to_text') app.add_template_filter(time_human, 'time_human') return app
def create_app(): conf = get_config() app = Flask(__name__) app.config.update(conf['ENV'][os.getenv('ENV')]) db.init_app(app) mail.init_app(app) cache.init_app(app,config=conf['CACHE_CONFIG']) return app
def create_app(config_name): app = Flask(__name__) app.config.from_object(config[config_name]) config[config_name].init_app(app) cache.init_app(app) db.init_app(app) db.app = app login_manager.init_app(app) mail.init_app(app) setup_themes(app) Mobility(app) from .utils.filters import register_filters register_filters(app) from .utils.processors import utility_processor app.context_processor(utility_processor) from .api import api as api_blueprint app.register_blueprint(api_blueprint, url_prefix='/api') from .main import main as main_blueprint app.register_blueprint(main_blueprint) from .account import account as auth_blueprint app.register_blueprint(auth_blueprint, url_prefix='/account') from .admins import admin admin.init_app(app) @app.route('/favicon.ico') def favicon(): return send_from_directory(app.static_folder, 'favicon.ico', mimetype='image/vnd.microsoft.icon') @app.route('/robots.txt') def robotstxt(): return send_from_directory(app.static_folder, 'robots.txt') # 暂时解决因Gunicorn中引发ERROR 11而无法正常提交的问题 #@app.teardown_request #def teardown_request(response_or_exc): # if app.config['SQLALCHEMY_COMMIT_ON_TEARDOWN']: # try: # db.session.commit() # except: # db.session.rollback() # db.session.remove() return app
def create_app(): app = Flask(__name__, template_folder='../templates', static_folder='../static') #环境的设置 app.config.from_object(settings.DevelopmentConfig) #初始化db db.init_app(app) #初始化缓存文件 cache.init_app(app=app, config=config) #初始化bootstrap bootstrap.init_app(app) app.register_blueprint(user_bp) app.register_blueprint(article_bp) return app
def create_app(config_name): app = Flask(__name__) app.config.from_object(config[config_name]) db.init_app(app) db.app = app if not app.config['TESTING']: configure_custom_settings(app) config[config_name].init_app(app) thumbnail.init_app(app) babel.init_app(app) cache.init_app(app) login_manager.init_app(app) mail.init_app(app) setup_themes(app) Mobility(app) from .utils.filters import register_filters register_filters(app) from .utils.processors import utility_processor app.context_processor(utility_processor) from .api import api as api_blueprint app.register_blueprint(api_blueprint, url_prefix='/api') from .main import main as main_blueprint app.register_blueprint(main_blueprint) from .account import account as auth_blueprint app.register_blueprint(auth_blueprint, url_prefix='/account') from .admins import admin admin.init_app(app) @app.route('/favicon.ico') def favicon(): return send_from_directory(app.static_folder, 'favicon.ico', mimetype='image/vnd.microsoft.icon') @app.route('/robots.txt') def robotstxt(): return send_from_directory(app.static_folder, 'robots.txt') return app
def create_app(config=None): app = Flask(__name__) app.config.from_object(settings) if isinstance(config, dict): app.config.update(config) elif config: app.config.from_pyfile(os.path.realpath(config)) redis_store.init_app(app) cache.init_app(app) app.plugin_modules = plugin_modules slackbot = SlackBot(app) _callback = partial(callback, app=app) slackbot.set_handler(_callback) slackbot.filter_outgoing(_filter) return app
def create_app(config=None): app = Flask(__name__) app.config.from_object(settings) if isinstance(config, dict): app.config.update(config) elif config: app.config.from_pyfile(os.path.realpath(config)) redis_store.init_app(app) cache.init_app(app) app.cache = cache app.plugin_modules = plugin_modules slackbot = SlackBot(app) slackbot.set_handler(callback) slackbot.filter_outgoing(_filter) return app
def create_app(config_name): app = Flask(__name__) app.config['APPENV'] = str(get_appconfig()) app.config.from_object(config[config_name]) config[config_name].init_app(app) cache.init_app(app) db.init_app(app) db.app = app login_manager.init_app(app) mail.init_app(app) setup_themes(app) Mobility(app) from .utils.filters import register_filters register_filters(app) from .utils.processors import utility_processor app.context_processor(utility_processor) from .api import api as api_blueprint app.register_blueprint(api_blueprint, url_prefix='/api') from .main import main as main_blueprint app.register_blueprint(main_blueprint) from .account import account as auth_blueprint app.register_blueprint(auth_blueprint, url_prefix='/account') from .admins import admin admin.init_app(app) # 暂时解决因Gunicorn中引发ERROR 11而无法正常提交的问题 @app.teardown_request def teardown_request(response_or_exc): if app.config['SQLALCHEMY_COMMIT_ON_TEARDOWN']: try: db.session.commit() except: db.session.rollback() db.session.remove() return app
def create_app(config_class=Config): app = Flask(__name__) # app.config['SECRET_KEY']='dai3hoahudhiuahduiah' # app.config['BABEL_DEFAULT_LOCALE'] = 'zh_Hans_CN' app.config.from_object(config_class) db.init_app(app) # SQLite初始化 migrate.init_app(app, db) # 数据库迁移初始化 bootstrap.init_app(app) # Bootstrap初始化 babel.init_app(app) # I18nL10n 初始化 images.init_app(app) # Imagine Normalise 初始化 login.init_app(app) # 用户系统 初始化 login.login_view = 'admin.login' mail.init_app(app) # 邮件系统 初始化 configure_uploads(app, (photos, sphotos, videos)) # 文件系统初始化 patch_request_class(app) # 文件大小限制,默认为16MB cache.init_app(app, config={'CACHE_TYPE': 'simple'}) # 页面缓存 初始化 from app.main import bp as main_bp # 首页注册 app.register_blueprint(main_bp) from app.module import bp as module_bp # 课程模块注册 app.register_blueprint(module_bp) from app.experiment import bp as experiment_bp # 通识实验注册 app.register_blueprint(experiment_bp, url_prefix='/experiment') from app.guide import bp as guide_bp # 课程指南注册 app.register_blueprint(guide_bp, url_prefix='/guide') from app.admin import bp as admin_bp # 管理页面注册 app.register_blueprint(admin_bp, url_prefix='/admin') from app.errors import bp as errors_bp #错误处理页面注册 app.register_blueprint(errors_bp) return app
def create_app(config_class=Config): app = Flask(__name__) # app.config['SECRET_KEY']='dai3hoahudhiuahduiah' # app.config['BABEL_DEFAULT_LOCALE'] = 'zh_Hans_CN' app.config.from_object(config_class) db.init_app(app) migrate.init_app(app, db) bootstrap.init_app(app) babel.init_app(app) images.init_app(app) cache.init_app(app, config={'CACHE_TYPE': 'simple'}) from app.errors import bp as errors_bp app.register_blueprint(errors_bp) from app.show import bp as show_bp app.register_blueprint(show_bp, url_prefix='/start') from app.contact import bp as contact_bp app.register_blueprint(contact_bp, url_prefix='/contact') from app.api import bp as api_bp api = Api(api_bp) api.add_resource(NgrokAPI, '/ngrok') app.register_blueprint(api_bp, url_prefix='/api') from app.main import bp as main_bp app.register_blueprint(main_bp) from app.data import bp as data_bp app.register_blueprint(data_bp, url_prefix='/data') from app.dashboard import bp as dashboard_bp app.register_blueprint(dashboard_bp) return app
def create_app(object_name): app = Flask(__name__, template_folder='templates') # here = os.path.abspath(os.path.dirname(__file__)) if os.path.exists('dev'): app.config.from_object(DevConfig) else: app.config.from_object(ProdConfig) eventlet.monkey_patch() mako.init_app(app) db.init_app(app) hashing.init_app(app) admin.init_app(app) login_manager.init_app(app) # csrf.init_app(app) debug_toolbar.init_app(app) cache.init_app(app) SOCKETIO_REDIS_URL = app.config['CELERY_BACKEND_URL'] socketio.init_app(app, async_mode='eventlet', message_queue=SOCKETIO_REDIS_URL) # celery = Celery(app.name) # celery.conf.update(app.config) api.init_app(app) admin.add_view(CustomView(name='Custom')) show_models = [ YjStationInfo, YjPLCInfo, YjGroupInfo, YjVariableInfo, Value, TransferLog, User ] for model in show_models: admin.add_view(CustomModelView(model, db.session, category='models')) admin.add_view( CustomFileAdmin(os.path.join(os.path.dirname(__file__), 'static'), '/static/', name='Static File')) def get_current_user(): return session['username'] @app.errorhandler(500) def server_inner_error(error): return u"内部代码错误 by yakumo17s" def close_db_connection(sender, **extra): db.session.close() # sender.logger.debug('Database close.') request_tearing_down.connect(close_db_connection, app) @app.context_processor def template_extras(): return {'enumerate': enumerate, 'current_user': current_user} @app.template_filter('capitalize') def reverse_filter(s): return s.capitalize() @user_logged_in.connect_via(app) def _track_logins(sender, user, **extra): # 记录用户登录次数,登录IP user.login_count += 1 user.last_login_ip = request.remote_addr user.last_login_time = int(time.time()) db.session.add(user) db.session.commit() @login_manager.user_loader def user_loader(user_id): user = User.query.get(user_id) return user def _get_frame(date_string): db = MySQLdb.connect('localhost', 'web', 'web', 'pyplc') query = 'SELECT * FROM {}'.format(date_string) df = read_sql(query, db) df = df.head(100) return df @app.route( '/db/<any(yjstationinfo, yjplcinfo, yjgroupinfo, yjvariableinfo):date_string>/' ) @cache.cached(timeout=10) def show_tables(date_string=None): df = _get_frame(date_string) if isinstance(df, bool) and not df: return 'Bad data format!' return render_template('show_data.html', df=df.to_html(classes='frame'), date_string=date_string) app.register_blueprint(basic_blueprint) app.register_blueprint(api_blueprint) app.register_blueprint(client_blueprint) return app