Мені здається що `@user.save` зайве, `@user.avatar.destroy` видаляє аватарочку і зберігає акаунт.
Також  `@user.avatar.destroy` повертає `true` або `false` відповідно до успішності операції. Краще перевіряти це значення і виводити повідомлення при помилці:
```
if @user.avatar.destroy
  redirect_to edit_admin_user_path(@user)
else
  redirect_to edit_admin_user_path(@user), :alert => "Помилка при видаленні фотографії"
end
```