Форум сайта python.su
Доброго времени суток,
Подскажите как починить плиз: я в модели переопределил метод delete() чтобы он при удалении стирал еще и папку на локальном диске.
При использовании model.delete() все работает как нужно и все вроде хорошо, но если попробовать сделать это через Actions(delete_selected), папка остается на месте. Покопав я понял что беда в том, что вызывается QuerySet.delete() вместо model.delete().
У меня пока тока одна идея, сделать свой action который будет выбирать по одному объекту из queryset и вызывать model.delete(). Это правильно, или есть более элегантное решение?
Офлайн
есть аткое дело. я вместо переопределния тупо отключил) делать в цикле удаление - не айс тоже, delete() в джанге довольно отстойная тема)
Офлайн
Это Django, нет элегантного решения, используй первое что пришло тебе в голову.
..bw
Офлайн
slav0nicПочему? Вполне решение.
делать в цикле удаление - не айс тоже
Офлайн
На правах предположения:
А если в модели завязать эту папку на FilePathField она не будет её за компанию удалять?
Офлайн
Daevaorn
нууу, всё относительно) хотя в принципе если 100 объеков удалять, то наверно ещё сойдёт
кстати как вариант, можно добавить в модель поле-флаг, показывающее что объект удалён, ну и manager для модели написать, чтоб фильтровал эти объекты. В джанге ещё с каскадным удалением весело, по неопытности можно поймать лулз В)
Офлайн
bwа как же принцыпы питона?
Это Django, нет элегантного решения, используй первое что пришло тебе в голову.
..bw
Офлайн