如何加载使用应用程序工厂和Flask_资产的Flask应用程序

2024-06-16 08:38:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个烧瓶应用程序,我正在尝试为其设置:

  1. 自动化的SCSS/JS编译工作流
  2. livereload,以便浏览器自动刷新

目标是每次更改SCSS文件时,它都会重新编译并重新加载浏览器

我想我已经完成了下面的重新编译,但是我如何进行实时重新加载呢?本文对此进行了暗示,但我不确定如何使用应用程序工厂方法: How to automate browser refresh when developing an Flask app with Python?

import logging
import os
from flask import Flask, request, current_app
from config import Config
from flask_assets import Environment, Bundle
from livereload import Server

def create_app(config_class=Config):
    app = Flask(__name__)
    app.config.from_object(config_class)
    
    assets = Environment(app)
    # assets.debug = True

    css = Bundle(
        'scss/main.scss',
        filters='pyscss',
        output='css/style.%(version)s.scss.css')

    from app.main import bp as main_bp
    app.register_blueprint(main_bp)
    assets.register('css', css)

    if not app.debug and not app.testing:
        app.logger.setLevel(logging.INFO)
        app.logger.info('Application starting.')

    return app

Tags: fromimportconfigapp应用程序flaskmainlogging