我在我的应用程序中使用django-storages,并且我想使用开箱即用的S3 版本控制。我的意思是,我想在不实现任何额外机制的情况下存储和检索同一文件的不同版本。
通过阅读文档,我了解到:
- 检索对象就像在 GET 请求中添加 version=XX 参数一样简单。
- 上传对象由 S3 自己处理。您只需要在存储桶中配置版本控制
但是,转到代码。如果我有这个:
from django.db import models
from django_s3_storage.storage import S3Storage
storage = S3Storage(aws_s3_bucket_name='test_bucket')
class Document(models.Model):
name = models.CharField(max_length=255)
s3_file = models.FileField(storage=storage)
如何获取文档的一个特定版本?就像是:
doc = Document.objects.get(pk=XX)
doc.s3_file.read(version=XXXXXXXXXX) # Something like this?
我一直在阅读官方文档,但找不到如何:
- 获取对象的可用版本
- 检索一个特定版本
编辑:阅读源代码,我知道我可以在 url() 调用中使用参数,但不确定什么参数(版本?)以及如何获取对象的现有版本。
任何帮助表示赞赏。