我正在制作一个简单的音乐应用。 我想允许用户上传他们的音频文件,我有一个页面,我打算显示所有歌曲。 我已经创建了一个模板,结构如下:
{% for song in songs %}
<div class="chart-item">
<div class="chart-position col-md-1">
<h3>#u</h3>
</div> <!-- chart-position -->
<div class="band-logo col-md-2">
<img src="{{ url_for('static', filename='uploads/users/{{ song['artistName'] }}/{{ song['pathToCover'] }}')}}">
</div> <!-- band-logo -->
<div class="band-name-and-autio col-md-9">
<div class="band-name">{{ song['artistName'] }} - {{ song['songName'] }}</div> <!-- band-name -->
<div class="audio">
<audio>
</audio>
</div> <!-- audio -->
</div> <!-- band-name-and-autio -->
<div class="clearfix"></div>
</div> <!-- chart-item -->
{% endfor %}
这里我想创建一个动态路径来覆盖图像和记录,但我不知道在这里正确写入文件的路径:
<img src="{{ url_for('static', filename='uploads/users/{{ song['artistName'] }}/{{ song['pathToCover'] }}')}}">
请解释如何做到这一点。我试图在烧瓶网页上找到解决方案,但是现在我没有任何结果。
答案 0 :(得分:10)
我不相信你可以像这样嵌套模板标签。但你也不应该这样做。
<img src="{{ url_for('static', filename='uploads/users/') }}{{ song['artistName'] }}/{{ song['pathToCover'] }}">
您可以通过以下示例了解其原因:
>>> from flask import Flask, url_for
>>> app = Flask(__name__)
>>> with app.test_request_context():
... print url_for('static', filename='uploads/users/')
/static/uploads/users/
那么您只需要添加artistName
,/
,pathToCover
答案 1 :(得分:5)
我认为你可以做到
<img src="{{ url_for('static', filename='uploads/users/'+ song['artistName']+'/'+ song['pathToCover'])}}">
它对我有用:)