views.py 797 B

123456789101112131415161718192021
  1. from django.contrib.auth.decorators import login_required
  2. from django.shortcuts import get_object_or_404, redirect, render
  3. from django.contrib import messages
  4. from .forms import UserForm, ProfileForm
  5. @login_required
  6. def profile(request):
  7. user_form = UserForm(request.POST or None, instance=request.user)
  8. profile_form = ProfileForm(request.POST or None, instance=request.user.profile)
  9. forms = [user_form, profile_form]
  10. if request.method == 'POST' and all(form.is_valid() for form in forms):
  11. for form in forms:
  12. form.save()
  13. messages.success(request, 'Profil mis à jour avec succès !')
  14. return redirect('profile')
  15. return render(request, 'accounts/profile.html', {
  16. 'user_form': user_form,
  17. 'profile_form': profile_form,
  18. })