我只是试图使用flask在html中显示图像。但是即使我给出了完整的正确图像路径,我也无法这样做。
我关注了此链接
python flask display image on a html page
我的samply.py
是
import os
from flask import Flask, flash, request, redirect, url_for, render_template
app = Flask(__name__)
app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER
@app.route('/show_image')
def show_index():
full_filename = os.path.join(app.config['UPLOAD_FOLDER'], '2.jpg')
return render_template("layout.html", user_image = full_filename)
if __name__ == "__main__":
app.run(debug=True)
还有我的HTML代码:
<!DOCTYPE html>
<html>
<head>
<title>Index</title>
</head>
<body>
<img src="{{ user_image }}" alt="User Image">
</body>
</html>
我得到
的输出127.0.0.1--[2019年6月9日11:50:41]“ GET /home/user/Documents/images/2.jpg HTTP / 1.1” 404-
当我在vscode中点击此链接/home/user/Documents/images/2.jpg
时,它将显示正确的图像;这意味着路径存在错误。
答案 0 :(得分:0)
您是否在flask应用程序中配置了静态目录?如果是这样,则将其作为应用程序的根,并且该应用程序不提供对文件系统其他部分的访问。换句话说,您不需要文件的“完整”(或更常见的是绝对)路径,而是要确保文件位于静态目录或子目录中,并且该路径是相对于该目录的。
此question可能会对您有所帮助。