如何url_for在Flask中使用引用文件夹中的文件?例如,我在static文件夹中有一些静态文件,其中一些可能在子文件夹中,如static/bootstrap.
当我尝试提供文件时static/bootstrap,我收到错误.
<link rel=stylesheet type=text/css href="{{ url_for('static/bootstrap', filename='bootstrap.min.css') }}">
Run Code Online (Sandbox Code Playgroud)
我可以引用不在子文件夹中的文件,这有效.
<link rel=stylesheet type=text/css href="{{ url_for('static', filename='bootstrap.min.css') }}">
Run Code Online (Sandbox Code Playgroud)
引用静态文件的正确方法是什么url_for?如何使用url_for在任何级别生成静态文件的URL?
我有一个像这样定义的路线:
@app.route('/magic/<filename>')
def moremagic(filename):
pass
Run Code Online (Sandbox Code Playgroud)
现在在模板中我想用url_for()这样的方式调用该路由:
<h1>you uploaded {{ name }}<h1>
<a href="{{ url_for('/magic/<filename>') }}">Click to see magic happen</a>
Run Code Online (Sandbox Code Playgroud)
我试过了:
<a href="{{ url_for('/magic', filename={{ name }}) }}">Click to see magic happen</a>
Run Code Online (Sandbox Code Playgroud)
那扔了一个 jinja2.TemplateSyntaxError: expected token ':' got }
任何人都可以建议如何{{ name }}将模板中出现的内容输入到url_for()所以当我点击时我调用正确的app.route?