Python 冻结烧瓶中URL生成器的问题

Python 冻结烧瓶中URL生成器的问题,python,flask,Python,Flask,我试图用冻结的flask冻结一个flask站点,但我被url生成器卡住了 我有一个@app.route用于我的图像: @app.route('/images/<image>/') def images(image): return send_from_directory(os.path.join(app.root_path, 'images'), image) 这将导致出现值错误:“404未找到” 我做错了什么?冷冻瓶生成器需要一个字典: @freezer.register

我试图用冻结的flask冻结一个flask站点,但我被url生成器卡住了

我有一个
@app.route
用于我的图像:

@app.route('/images/<image>/')
def images(image):
    return send_from_directory(os.path.join(app.root_path, 'images'), image)
这将导致出现
值错误
:“404未找到”


我做错了什么?

冷冻瓶生成器需要一个字典:

@freezer.register_generator
def images():
    path = os.path.join(app.root_path, 'images')
    images = next(os.walk(path))[2]
    for image in images:
        yield {"image": image}
按照这样做的方式,您返回了一个字符串的iterable,并将其理解为URL而不是值

如果要返回字符串,必须返回URL:
yield URL\u for('images',image=image)

此外,您的路由不应该有尾随斜杠,因为这样可以理解它是一个文件夹,其中默认文件是
index.html
。删除尾部斜杠:
@app.route('/images/')


查看文档了解更多详细信息:

您的图像标签看起来像这样的
?@drowness是的。是的。这是什么意思?我不知道
字符串
过滤器。@iurisilvio是的。这太奇怪了。这不是真的,这有点帮助。虽然现在我得到了
mimetypemastchwarning:u'index.html(type text/html)的文件扩展名内容类型不匹配:image/png
和my
images
文件夹包含名为
someimage.png
的文件夹,其中包含一个
index.html
,其中包含实际的图像数据。@lejon只需从路由中删除尾随斜杠即可<代码>@app.route('/images/')
@freezer.register_generator
def images():
    path = os.path.join(app.root_path, 'images')
    images = next(os.walk(path))[2]
    for image in images:
        yield {"image": image}