FloriCore/member/views/account_views.py

48 lines
1.7 KiB
Python
Raw Normal View History

2025-05-09 14:06:21 +02:00
from django.http import HttpResponse
from django.shortcuts import render, redirect, get_object_or_404
2025-05-09 16:15:17 +02:00
from django.template import loader
from django.db.models import Count
2025-07-19 16:07:33 +02:00
from ..models import Person, UserAccount
from ..forms import PersonForm, AccountForm
2025-05-09 14:06:21 +02:00
2025-07-05 11:49:07 +02:00
def details_account(request, id):
account = get_object_or_404(Account, id=id)
template = loader.get_template("details_account.html")
context = {
'account': account,
}
return HttpResponse(template.render(context, request))
def create_account(request, id):
person = get_object_or_404(Person, id=id)
if request.method == "POST":
form = AccountForm(request.POST)
if form.is_valid():
account=form.save(commit=False)
account.person = person
account.save()
return redirect("details", person.id)
else:
form = AccountForm()
return render(request, "account_form.html", {'form': form, 'action': 'Erstellen', 'id': id})
def edit_account(request, id):
account = get_object_or_404(UserAccount, id=id)
if request.method == 'POST':
form = AccountForm(request.POST, instance=account)
if form.is_valid():
form.save()
return redirect('details', account.person.id)
else:
form = AccountForm(instance=account)
return render(request, 'account_form.html', {'form': form, 'action': "Bearbeiten" , 'id': account.person.id})
def delete_account(request, id):
account=get_object_or_404(UserAccount, id=id)
person_id=account.person.id
if (request.method=='POST'):
account.delete()
return redirect("details", person_id)
return render(request, "confirm_account_delete.html", {'account': account, 'id': account.person.id})