我试图弄清楚如何指定html模板和静态文件的位置,例如Flask的javascript文件.
我目前有一个允许模块加载的结构
/wsgi
/templates
/login.html
/logout.html
/menu.html
/static
/modules
/helloworld
/module.html
/module.json
/module.js
Run Code Online (Sandbox Code Playgroud)
我希望能够直接使用模板加载例如Javascript文件,而无需将其移动到静态文件夹.
理想情况下,我想做这样的事情
moduleHtml = render_template(moduleHtmlPath)
Run Code Online (Sandbox Code Playgroud)
并在模板内
<script type=text/javascript src="{{ url_for('myModule', filename='module.js') }}"></script>
Run Code Online (Sandbox Code Playgroud)
如果您正在使用Flask的蓝图功能,则可以在蓝图中包含静态文件.有点像你所拥有的,只需要将它们放在"静态"文件夹中.该文档有一个很好的例子:
http://flask.pocoo.org/docs/blueprints/#static-files
helloworld = Blueprint('helloworld', __name__, static_folder='static')
Run Code Online (Sandbox Code Playgroud)
然后引用模板中的静态文件,如下所示:
url_for('helloworld.static', filename='module.js')
Run Code Online (Sandbox Code Playgroud)
如果你不熟悉蓝图,那么值得一读.他们很漂亮.
否则,Flask有一种引用全局静态文件的内置方法,但它们需要位于根"static"目录中:
http://flask.pocoo.org/docs/quickstart/#static-files
url_for('static', filename='module.js')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2232 次 |
| 最近记录: |