我有一个烧瓶网站设置如下:
.flask
.static
.images
.css
.templates
我的basic.py文件为:
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def index():
return render_template('index.html')
@app.route('/portfolio')
def portfolio():
return render_template('portfolio.html')
if __name__ == '__main__':
app.run(debug=True)
在portfolio.html文件中,我希望能够收集images目录中的所有文件,并将它们显示为可点击的网址。
<section class="row">
{% for image in path_to_folder %}
<section class="col-md-4 col-sm-6" style="background-color: green;">
{{ image }}
</section>
{% endfor %}
</section>
是否有一种简单的方法可以从images目录中获取所有图像?我可以将图像存储到数组中并将它们作为参数传递给render_template('portfolio.html',images =?“)吗?
答案 0 :(得分:3)
您只需使用os.listdir
即可获取所有文件。
@app.route('/portfolio')
def portfolio():
images = os.listdir(os.path.join(app.static_folder, "images"))
return render_template('portfolio.html', images=images)
然后在你的模板中:
<section class="row">
{% for image in images %}
<section class="col-md-4 col-sm-6" style="background-color: green;">
<a href="{{ url_for('static', filename='images/' + image) }}">{{ image }}</a>
</section>
{% endfor %}
</section>