У меня есть страница профиля пользователя, на которой пользователь может обновить ее детали и изменить изображение профиля. Загрузка изображения работает нормально. но я хочу этого, когда пользователь меняет изображение своего профиля. ранее загруженное изображение должно быть удалено из папки.
У меня есть модель UserProfile
, у которой OneToOneField () связан с user_auth
таблицей
models.py
class UserProfile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
profile_img = models.ImageField(upload_to='ProfileImg')
views.py
profile_img = request.FILES['profile-upload']
if profile_img.name.endswith(tuple(ALLOWED_EXTENTIONS)):
if user.userprofile.profile_img is not None:
os.remove(user.userprofile.profile_img.name) <---------this solution is not working
user.userprofile.profile_img = profile_img
user.save()
Как удалить старое изображение при обновлении ImageField?
Я пробовал это решение, но возникает ошибка:
Exception Type: FileNotFoundError
Exception Value:
[WinError 3] The system cannot find the path specified: 'ProfileImg/model-5.jpg'
Я уже перепроверил папку, но изображение все еще там. Я не знаю, где я ошибаюсь. Мы будем благодарны за любую помощь