Как переместить файлы в другую директорию django-storage s3
Я работаю над новостным блогом, где вы можете добавлять в новости столько файлов, сколько захотите. Для хранения файлов я использую amazon s3 и django-strorage. Но после того, как я добавил представление news-update, у меня возникли некоторые проблемы с управлением файлами.
Как вы можете видеть, здесь мои файлы модели
class FileStorage(models.Model):
file = models.FileField(upload_to=uploadFile)
upload_path = models.TextField(blank=True, default='files/')
def __str__(self):
return f'Файл: {self.file.name.split("/")[-1]}'
Главная проблема - как обновить FileField после перемещения файла в другую директорию?
Вот мой скрипт перемещения файлов.
bucket = S3Boto3Storage()
from_path = bucket._normalize_name(bucket._clean_name(self.instance.file.name))
to_path = bucket._normalize_name(bucket._clean_name(self.cleaned_data['upload_path']))
result = bucket.connection.meta.client.copy_object(
Bucket=bucket.bucket_name,
CopySource=bucket.bucket_name + "/" + from_path,
Key=to_path)
bucket.delete(from_path)
Все работает хорошо, но только с путем. Файл в поле FileField хранит старый путь. Как я могу обновить его?