FileField получить имя файла для удаления файла в AWS

В итоге мне удалось удалить файл из AWS следующим образом:

    s3 = boto3.resource('s3',
    aws_access_key_id = 'BLABLABLABLA',
    aws_secret_access_key = 'bLABla+2+bLbLABlaABla')

    bucket_name = 'mydoc'
    file_name = 'some_path/12bw.png'
    s3.Object(bucket_name, file_name).delete()

Чтобы удалить запись и файл AWS, которые я создал в файле views.py:

def slett(request, id):
    dokument = Dokument.objects.get(id=id)
    s3 = boto3.resource('s3',
    aws_access_key_id = 'BLABLABLABLA',
    aws_secret_access_key = 'bLABla+2+bLbLABlaABla')


    bucket_name = 'mydoc'
    file_name = dokument.file.url
    
    s3.Object(bucket_name, file_name).delete()
    dokument.delete()
    return HttpResponse(file_name)

Это не работает. Я получаю полный URL-адрес файла. Мне нужен только путь от bucket. Например

file_name = 'some_path/bw.png'

Я новичок в этом деле. Чтобы удалить файл, я потратил целую вечность. Теперь я потратил несколько часов, пытаясь найти путь...

Спасибо за любую помощь.

Спасибо!

Вот что я сделал:

file_name = dokument.file.url
filepath = urlparse(file_name).path
Вернуться на верх