读取和写入存储在 aws s3 中的数据库文件(Heroku + Django)
Read and write a DB file stored in aws s3 (Heroku + Django)
我遇到了一个简单的要求,我很感激任何想法!
首先是环境:使用 Postgres 数据库在 Heroku 上部署的 Django 应用程序并提供来自 AWS S3 的静态文件。
我有一个带有 FileField 的模型,当我上传文件时,它存储在 AWS S3 存储桶中。
我只需要读取文件,写一些文本并再次保存,应该很容易吧?
我设法在我的笔记本电脑的开发中完成了它,但是当我将应用程序部署到 heroku 时,我遇到了很多错误,比如文件路径错误(我猜它试图在 heroku 中寻找 aws 存储桶路径服务器)、写入权限和其他一些...
我是不是做错了什么?我怎样才能做到这一点?
谢谢!
我想错了...
解决方法是直接在定义好的存储中读写:
from django.core.files.storage import default_storage
with default_storage.open(model.field.name, "w+") as f:
f.write("hello")
希望这对大家有用
我遇到了一个简单的要求,我很感激任何想法!
首先是环境:使用 Postgres 数据库在 Heroku 上部署的 Django 应用程序并提供来自 AWS S3 的静态文件。
我有一个带有 FileField 的模型,当我上传文件时,它存储在 AWS S3 存储桶中。
我只需要读取文件,写一些文本并再次保存,应该很容易吧?
我设法在我的笔记本电脑的开发中完成了它,但是当我将应用程序部署到 heroku 时,我遇到了很多错误,比如文件路径错误(我猜它试图在 heroku 中寻找 aws 存储桶路径服务器)、写入权限和其他一些...
我是不是做错了什么?我怎样才能做到这一点? 谢谢!
我想错了...
解决方法是直接在定义好的存储中读写:
from django.core.files.storage import default_storage
with default_storage.open(model.field.name, "w+") as f:
f.write("hello")
希望这对大家有用