У меня есть вид для профиля учетной записи. Я бы хотел, чтобы пользователь мог редактировать изображение после того, как он его добавил. У меня есть код редактирования. Как только пользователь редактирует изображение, он добавляет это изображение в базу данных, но не удаляет предыдущее изображение.
Итак, вопрос в том, как мне сделать следующее:
Проверьте, существует ли изображение
Если это действительно удалить его
Добавить новое изображение
Мое мнение находится ниже, любые предложения приветствуются.
@login_required
def profile_img_edit(request, username, id):
'''Edit a Profile Image'''
messages.success(request, "Your changes were saved!")
user = get_object_or_404(User, username=username)
if request.user != user:
return permission_denied(request)
profile_img = get_object_or_404(ProfileImage, user=user, id=id)
if request.method == 'POST':
form = Profile_ImageEditForm(request.POST, request.FILES, instance=profile_img)
if form.is_valid():
form.save()
return HttpResponseRedirect(
reverse('profile_img', kwargs={
'username': request.user.username,
'id': profile_img.id}))
else:
form = Profile_ImageEditForm()
return render_to_response('accounts/profile_img_edit.html', {
'form':form,
'object':profile_img
}, context_instance=RequestContext(request))