首页 > 解决方案 > Django 将图像数据保存到数据库

问题描述

我是 Django 的新手。Django 的默认行为是将图像保存到“媒体”,并且只将图像路径保存到数据库。有没有办法改变这种行为并将图像数据本身保存到 sql-server 数据库中?

我找到了一些解决方案,但没有一个主题对我有用,例如:

1) django-storages:我找不到有关如何实现此功能的完整示例。我尝试了不同的方法,但未能成功

2)使用binaryField:我怎样才能有一个带有按钮的自定义字段来从所选文件夹上传图像,例如imageField和FileField?

标签: sqlsql-serverdjangodatabaseimagefield

解决方案


摘自 Audrie Roy Greenfield 和 Daniel Roy Greenfield 的精彩书籍“Django 1.11 的两个勺子:Django Web 框架的最佳实践”:

永远不应该在数据库字段中存储文件。如果它被认为是问题的解决方案,请找到经过认证的数据库专家并征求第二意见。

总结 PostgreSQL 专家 Frank Wiles 关于使用数据库作为文件存储的问题:

➤ '读/写数据库总是比文件系统慢'</p>

➤ '您的数据库备份变得庞大且耗时'</p>

➤ '现在访问文件需要通过你的应用程序 (Django) 和 DB 层'</p>

此博客文章中的更多信息


推荐阅读