You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

45 lines
1.3 KiB

from django.shortcuts import render, redirect
from .models import Contact
from .forms import ContactForm
# Create your views here.
## index
def contact_list(request):
contacts = Contact.objects.all()
return render(request, 'contacts/contact_list.html', { 'contacts': contacts})
## show
def contact_detail(request, pk):
contact = Contact.objects.get(id=pk)
return render(request, 'contacts/contact_detail.html', {'contact': contact})
## new
def contact_create(request):
if request.method == 'POST':
form = ContactForm(request.POST)
if form.is_valid():
contact = form.save()
return redirect('contact_detail', pk=contact.pk)
else:
form = ContactForm()
return render(request, 'contacts/contact_form.html', {'form': form})
## edit
def contact_edit(request, pk):
contact = Contact.objects.get(id=pk)
if request.method == "POST":
form = ContactForm(request.POST, instance=contact)
if form.is_valid():
contact = form.save()
return redirect('contact_detail', pk=contact.pk)
else:
form = ContactForm(instance=contact)
return render(request, 'contacts/contact_form.html', {'form': form})
## delete
def contact_delete(request, pk):
Contact.objects.get(id=pk).delete()
return redirect('contact_list')