Задать вопрос
@mspuz

Django 4 — как удалить файл при удалении из админки?

Всем привет.

1. При добавлении файла для модели в админке есть возможность поставить галочку и при пересохранении удалить этот файл из БД. Но как удалить этот файл физически?

2. В интернете много примеров, как удалять файл при удалении самой модели. А как удалить все файлы, если их несколько.

Спасибо.
  • Вопрос задан
  • 300 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Python-разработчик
    10 месяцев
    Далее
  • Нетология
    Python-разработчик: расширенный курс + нейросети
    12 месяцев
    Далее
  • Компьютерная академия «TOP»
    Разработка на Python
    1 год
    Далее
Пригласить эксперта
Ответы на вопрос 2
@deliro
Что значит "как"? Ответь на вопрос: как получить все файлы, связанные с моделью? Вот теперь оформи это в метод модели

def get_all_my_files(self) -> list[str]:
    result = []
    result.extend(get_from_here())
    result.extend(and_from_there())
    return result


И повесь на pre_delete сигнал получение файлов, а потом удаление
Ответ написан
Комментировать
@mspuz Автор вопроса
Спасибо. Слегка запутался и протупил. Но решил все немного проще - использую django_cleanup.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы