我有一个Django App,它允许用户上传文件并将其保存到s3存储桶。我的问题是在上传到存储桶之前如何重命名文件?
这是我的models.py
班:
from converter.storage_backends import CsvStorage
from django.db import models
from django.utils import timezone
class CSVUpload(models.Model):
csv_file = models.FileField(storage=CsvStorage())
def __str__(self):
return self.csv_file
这是我的backend_storages.py
班:
from storages.backends.s3boto3 import S3Boto3Storage
from django.conf import settings
class CsvStorage(S3Boto3Storage):
location = settings.AWS_CSV_LOCATION
file_overwrite = False
有人可以帮助我了解如何解决吗?感谢您能提供的任何帮助
答案 0 :(得分:0)
您将需要覆盖保存功能。我做了这样的事情:
class Documents(AuditFields):
document_file = models.FileField(max_length=10000)
def save(self, *args, **kwargs):
self.document_file.name = 'some_prefix' + self.document_file.name
super(PlantDocument, self).save(*args, **kwargs)