栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

服务存储在SQLAlchemy LargeBinary列中的图像

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

服务存储在SQLAlchemy LargeBinary列中的图像

如果您绝对需要将图像存储在数据库中,那么是的,这是正确的。通常,文件存储在文件系统中,路径存储在数据库中。这是更好的解决方案,因为与动态发送大量数据的应用程序不同,Web服务器通常具有一种从文件系统提供文件的高效方法。


要提供图像,请编写一个获取图像数据并将其作为响应发送的视图。

@app.route('/event/<int:id>/logo')def event_logo(id):    event = Event.query.get_or_404(id)    return app.response_class(event.logo, mimetype='application/octet-stream')<img src="{{ url_for('event_logo', id=event.id }}"/>

最好使用正确的模仿类型而不是

application/octet-stream


您也可以使用数据uri将图像数据直接嵌入html中。这不是最理想的,因为每次页面渲染时都会发送数据uri,而客户端可以缓存图像文件。

from base64 import b64enpre@app.route('/event/<int:id>/logo')def event_logo(id):    event = Event.query.get_or_404(id)    image = b64enpre(event.logo)    return render_template('event.html', event=event, logo=image)<p>{{ obj.x }}<br/>{{ obj.y }}</p><img />


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/391310.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号