python 无法显示html文件夹中的图像[重复]

yvfmudvl  于 2023-02-15  发布在  Python
关注(0)|答案(1)|浏览(152)
    • 此问题在此处已有答案**:

How to serve static files in Flask(24个答案)
6小时前关门了。
我试图在flask中呈现html中的图像,路径指向正确的文件,但它不呈现一些如何。
浏览次数

@inventory_bp.route("/show")
def show_image():
    id = 3
    image = Images.query.get(id)
    upload_folder = app.config['UPLOAD_FOLDER']
    image_path = os.path.join(upload_folder, image.filename)
    return render_template("image-upload.html",image_url=image_path)

HTML

x一个一个一个一个x一个一个二个x

62lalag4

62lalag41#

您正在创建的image_path是操作系统上的 * 文件路径 *(例如C:\path\to\project\flaskbp\uploads\image.png。这不是HTML上img元素的正确src
相反,您可以将uploads文件夹放在static文件夹下,然后动态创建图像的URL。

from flask import Flask, render_template

app = Flask(__name__)

@app.route("/show")
def show_image():
    image_path = "uploads/image.png"
    return render_template("image.html", image_url=image_path)
<div>
    <img src="{{ url_for('static', filename=image_url) }}"/>
</div>

文件夹结构:

\---root
    |   app.py
    |
    +---static
    |   \---uploads
    |           image.png
    |
    \---templates
            image.html

相关问题