多层文件夹下的图片如何获取
时间: 2023-12-28 07:04:55 浏览: 133
如果你想要访问多层文件夹下的图片,可以在路由中使用带有多个路径参数的 URL。具体步骤如下:
1. 在路由中使用多个路径参数来表示图片的路径。假设你的图片存储在 `/path/to/images` 目录下的 `folder1/folder2` 文件夹中,你可以使用以下路由:
```python
@app.route("/photo/<folder1>/<folder2>/<filename>")
def photo(folder1, folder2, filename):
full_path = os.path.join('/path/to/images', folder1, folder2, filename)
if os.path.exists(full_path):
return send_file(full_path, mimetype='image/jpeg')
else:
abort(404)
```
这里使用了三个路径参数 `<folder1>`、`<folder2>` 和 `<filename>`,分别表示图片所在的文件夹1、文件夹2和文件名。使用 `os.path.join()` 方法将它们拼接成完整的图片路径,并使用 `os.path.exists()` 方法检查该文件是否存在。如果文件存在,使用 `send_file()` 方法将文件发送给客户端;否则,返回 404 错误。
2. 在 HTML 模板中使用多个路径参数来访问图片。例如,要访问 `/path/to/images/folder1/folder2/example.jpg`,可以使用以下代码:
```html
<img src="{{ url_for('photo', folder1='folder1', folder2='folder2', filename='example.jpg') }}">
```
这里在 `url_for()` 方法中指定了三个路径参数,分别对应路由中的 `<folder1>`、`<folder2>` 和 `<filename>`。
希望这能帮助你访问多层文件夹下的图片。
阅读全文