在生产中使用Flask编译Coffeescript

Nic*_*win 4 python dev-to-production flask coffeescript

我有一个Flask应用程序,我正在生产中运行.现在它有一个很丑的js文件,我想要突破并重写像Coffeescript这样的东西.我正在考虑像Flask-Cake这样的东西来简化CoffeeScript编译.但是,我不知道这样的东西会如何适用于制作.我应该有一个脚本在部署之前编译coffeescript文件,对吧?我从来没有使用过这种特殊布局的系统 - 未编译的服务器端,但编译了客户端.这里的标准程序是什么?

Mar*_*zer 7

您可能正在寻找Flask-Assets.

网站示例:

from flask import Flask
from flask.ext.assets import Environment, Bundle

app = Flask(__name__)
assets = Environment(app)

js = Bundle('jquery.js', 'base.js', 'widgets.js',
            filters='jsmin', output='gen/packed.js')
assets.register('js_all', js)
Run Code Online (Sandbox Code Playgroud)

这将自动连接jquery.js,base.jswidgets.js在您的static文件夹中管理它们jsmin并保存结果static/gen/packed.js.

默认情况下,当其中一个源文件发生更改时,此编译始终会发生.在生产中观看文件在生产中是有点昂贵的(并且需要在服务器上安装coffeescript编译器!),因此有一个配置值来禁用监视.

另一个更轻量级的插件,但根据我的经验,Flask-Makestatic也不那么强大.