问题 django将图像存储在数据库中


有没有人知道是否有一种直接在数据库中存储图像的开箱即用方式,而使用只需将其上传到MEDIA_ROOT的ImageField模型类型。 如果有,那么如何为这些图像服务?

干杯


9216
2017-09-22 16:08


起源



答案:


不,没有。并且有充分的理由。存储和提供数据库中的图像非常低效。将它们存储在文件系统中,并直接从Apache提供它们。


8
2017-09-22 18:24



也许你可以提供更多关于在数据库中存储图像的可怕效率低下的详细信息? - jeff7091
应该注意,不建议使用Apache提供图像。 - Izz ad-Din Ruhulessin
@ Izzad-DinRuhulessin是一个笑话吗?如果没有,需要引用 - Foon
没有成功和错误。如果服务器后面有缓存层,则可能没有问题。存储在数据库中增加了可移植性 - 数据库转储是完整的数据集。 - bartekbrak


答案:


不,没有。并且有充分的理由。存储和提供数据库中的图像非常低效。将它们存储在文件系统中,并直接从Apache提供它们。


8
2017-09-22 18:24



也许你可以提供更多关于在数据库中存储图像的可怕效率低下的详细信息? - jeff7091
应该注意,不建议使用Apache提供图像。 - Izz ad-Din Ruhulessin
@ Izzad-DinRuhulessin是一个笑话吗?如果没有,需要引用 - Foon
没有成功和错误。如果服务器后面有缓存层,则可能没有问题。存储在数据库中增加了可移植性 - 数据库转储是完整的数据集。 - bartekbrak


这里有一个很好的解决方案: http://djangosnippets.org/snippets/1305/ 它将内容存储在数据库blob中。


4
2018-04-11 12:48





似乎没有内置的 BlobField 在Django。但是,有一个可用 这里。我不确定它是否支持所有后端,但它可能对你有用。这样,您就可以编写一个表单和视图,将图像作为附件上传,并将其作为blob存储在数据库中。


1
2017-09-22 16:41