0

我使用 DRF 和 django-storages 将文件上传到 S3 存储桶。

我可以从管理员或从 POST 到 API 端点创建任何带有文件的新条目。

但是由于某种原因,一旦我尝试更新实例(无论是从管理员还是从 API 端点),我都会得到一个ValueError似乎表明DRF 找不到文件的信息。

但是当我使用 Django 的 admin 或 shell 时,我看到文件已正确保存(FieldFile在实例上)并且文件已保存在存储桶中。

我没有覆盖任何东西:不是管理表单,不是序列化程序的更新方法,不是视图的检索方法等。

我不知道这怎么可能。

有什么建议吗?

4

1 回答 1

0

我最终找到了解决方案。在我的代码中的某个地方,序列化程序的一个字段有一个to_representation()返回.instance而不是instance.url. 我希望这对任何人都有帮助。

于 2021-05-21T21:37:01.290 回答