__init__.py 设置后,Flask 应用程序中的静态图像文件夹未加载图像
Images are not loading for the static images folder in flask app after __init__.py setup
我有一个我构建的烧瓶应用程序。用户可以通过表单上传图片。当用户上传图片时,它会将图片添加到文件夹 website/static/images/
。文件正确保存在文件夹中,但由于其位置或文件夹结构的某些问题,我无法显示图像。
这是init.py:
from flask import Flask, session, redirect, url_for
from pymongo import MongoClient
from os import path, mkdir
client = MongoClient()
db = client.Contractor
app = Flask(__name__, static_url_path='/static')
app.config['SECRET_KEY'] = 'eigeinsonriuosvnirosjvsoe'
upload_folder = 'website/static/images/'
if not path.exists(upload_folder):
mkdir(upload_folder)
app.config['MAX_CONTENT_LENGTH'] = 25 * 1024 * 1024
app.config['UPLOAD_FOLDER'] = upload_folder
这是我尝试检索它们并将它们显示给用户的地方:
{% for photo in all_photos %}
<div>
<a>
<img style="height: 250px;" src={{ url_for('static', filename=photo.filename ) }}/>
</a>
<p>{{ photo.image_name }}</p>
<p>{{ photo.caption }}</p>
<p>{{ photo.location }}</p>
</div>
{% endfor %}
我试过以下方法:
<img style="height: 250px;" src={{ url_for('static', filename=photo.filename ) }}/>
还有这个
<img style="height: 250px;" src={{ url_for('static/images', filename=photo.filename ) }}/>
还有这个
<img style="height: 250px;" src={{ url_for('static/images/', filename=photo.filename ) }}/>
这是我在尝试任何变体时不断遇到的错误:
werkzeug.routing.BuildError: Could not build url for endpoint 'static/images' with values ['filename']. Did you mean 'static' instead?
假设 'website' 是设置 Flask 应用程序的主目录,并且您的结构如下:
/website
/static
/images
那么你应该这样做:
<img style="height: 250px;" src={{ url_for('static', filename='images/'+photo.filename ) }}/>
我有一个我构建的烧瓶应用程序。用户可以通过表单上传图片。当用户上传图片时,它会将图片添加到文件夹 website/static/images/
。文件正确保存在文件夹中,但由于其位置或文件夹结构的某些问题,我无法显示图像。
这是init.py:
from flask import Flask, session, redirect, url_for
from pymongo import MongoClient
from os import path, mkdir
client = MongoClient()
db = client.Contractor
app = Flask(__name__, static_url_path='/static')
app.config['SECRET_KEY'] = 'eigeinsonriuosvnirosjvsoe'
upload_folder = 'website/static/images/'
if not path.exists(upload_folder):
mkdir(upload_folder)
app.config['MAX_CONTENT_LENGTH'] = 25 * 1024 * 1024
app.config['UPLOAD_FOLDER'] = upload_folder
这是我尝试检索它们并将它们显示给用户的地方:
{% for photo in all_photos %}
<div>
<a>
<img style="height: 250px;" src={{ url_for('static', filename=photo.filename ) }}/>
</a>
<p>{{ photo.image_name }}</p>
<p>{{ photo.caption }}</p>
<p>{{ photo.location }}</p>
</div>
{% endfor %}
我试过以下方法:
<img style="height: 250px;" src={{ url_for('static', filename=photo.filename ) }}/>
还有这个
<img style="height: 250px;" src={{ url_for('static/images', filename=photo.filename ) }}/>
还有这个
<img style="height: 250px;" src={{ url_for('static/images/', filename=photo.filename ) }}/>
这是我在尝试任何变体时不断遇到的错误:
werkzeug.routing.BuildError: Could not build url for endpoint 'static/images' with values ['filename']. Did you mean 'static' instead?
假设 'website' 是设置 Flask 应用程序的主目录,并且您的结构如下:
/website
/static
/images
那么你应该这样做:
<img style="height: 250px;" src={{ url_for('static', filename='images/'+photo.filename ) }}/>