首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在heroku上的django管理面板中为模型实例添加图像字段?

如何在heroku上的django管理面板中为模型实例添加图像字段?
EN

Stack Overflow用户
提问于 2021-12-25 17:49:22
回答 1查看 304关注 0票数 0

我增加了几本关于heroku数据的书。每个模型都显示在heroku应用站点上,并显示其图像。我的模特们都有“形象”。我把这些图片从我的个人电脑文件夹,当我打开这个应用程序2-3个小时后,图书图像消失。我想是因为我关掉了一台电脑,在那里我拍摄了这些照片。我怎样才能正确地处理这些图像呢?

EN

回答 1

Stack Overflow用户

发布于 2021-12-26 02:42:49

我想是因为我关掉了一台电脑,在那里我拍摄了这些照片

这可能不是它,因为Heroku无法访问您计算机上的文件。

当您将一个文件上传到Django管理员时,它会查看DEFAULT_FILE_STORAGE设置配置,以确定如何存储该文件。默认情况下,它使用django.core.files.storage.FileSystemStorage,这意味着它在MEDIA_ROOT定义的位置将上传的文件写入dyno的文件系统。

问题是,dynos是短暂的,它们可以在没有任何警告的情况下被销毁、重新启动和移动,它取代了您的文件系统。这意味着那些上传的文件只是被删除,没有跟踪,但是ImageField引用仍然认为它们在那里。

此问题的解决方案是更新项目的DEFAULT_FILE_STORAGE以使用永久的东西,例如与S3兼容的对象存储。在Heroku & Django土地上,一个常见的解决方案是在使用django-storages的同时使用Heroku的斗牛士。此解决方案将您的文件上载到一个持久的数据存储区,该数据存储在dyno重新启动之后,而不是写入经常被删除的dyno文件系统。

我知道这可能会令人望而生畏,所以我写了一个非常好的Heroku + Bucketeer过程的这篇文章

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70481782

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档