gpt4 book ai didi

flask - 无法使用 flask Assets 从 sass 文件生成 all.css 文件

转载 作者:行者123 更新时间:2023-12-04 14:24:39 27 4
gpt4 key购买 nike

我厌倦了在我的 Flask 应用程序中使用 css,所以我决定使用 Flask Assets 转向 scss https://github.com/miracle2k/flask-assets .我在我的 app.py 文件中添加了这个:

from flask_assets import Environment, Bundle

assets = Environment(app)
assets.debug = True
assets.url = app.static_url_path
scss = Bundle('sass/foo.scss', 'sass/bar.scss', filters='pyscss', output='gen/all.css')
assets.register('scss_all', scss)

如果我理解正确,这些行应该检查我的 static/sass 文件夹并生成一个带有单个 all.css 缩小文件的 gen 文件夹,对吗?我还在我的静态 Assets 文件夹中创建了一个 sass 文件夹,并在其中创建了 foo.scss 文件,并使用一些代码对其进行了测试。但是,当我启动该应用程序时,没有生成任何内容,也没有收到任何错误。我在这里做错了什么?

最佳答案

这是我如何让它工作的。

这是我的项目目录在生成任何内容之前的屏幕截图:

enter image description here

接下来,我确保安装了以下内容:

pip install flask-assets

pip install pyscss (this is your filter in the filters='pyscss' section)

下面是我的代码设置:

from flask import Flask, render_template
from flask_assets import Environment, Bundle

app = Flask(__name__)

assets = Environment(app)
assets.url = app.static_url_path
assets.debug = True

scss = Bundle('sass/foo.scss', 'sass/bar.scss', filters='pyscss', output='gen/all.css')
assets.register('scss_all', scss)


@app.route('/')
def hello_world():
return render_template('index.html')


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

还有 index.html:

{% assets "scss_all" %}
<link rel="stylesheet" href="/static/gen/all.css">
{% endassets %}
<ul>
<li>
Test Flask Assets
</li>
</ul>

现在,当我运行该应用程序时,它花了一秒钟的时间来生成 css,但它确实生成了。一旦完成,这是运行后的目录结构:

enter image description here

你可以在 chrome 调试器中看到它确实加载了:

enter image description here

需要注意的是,配置output='gen/all.css'中的文件夹必须是gen,否则无法运行。

编辑同样根据@David 的评论,您必须创建所有必需的 scss 文件以生成输出。

关于flask - 无法使用 flask Assets 从 sass 文件生成 all.css 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48402360/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com