PonyConf/accounts/views.py

29 lines
912 B
Python

from django.contrib import messages
from django.contrib.auth.decorators import login_required
from django.contrib.auth.views import password_change
from django.shortcuts import render
from .forms import PonyConfUserForm, ProfileForm
@login_required
def password(request):
return password_change(request, post_change_redirect='profile')
@login_required
def profile(request):
forms = [ProfileForm(request.POST or None, instance=request.user),
PonyConfUserForm(request.POST or None, instance=request.user.ponyconfuser)]
if request.method == 'POST':
if all(form.is_valid() for form in forms):
for form in forms:
form.save()
messages.success(request, 'Profile updated successfully.')
else:
messages.error(request, 'Please correct those errors.')
return render(request, 'accounts/profile.html', {'forms': forms})