Files
python-tdd/src/apps/dashboard/views.py

26 lines
941 B
Python
Raw Normal View History

from django.core.exceptions import ValidationError
from django.shortcuts import redirect, render
from .models import Item, List
def home_page(request):
return render(request, 'apps/dashboard/home.html')
def new_list(request):
nulist = List.objects.create()
item = Item(text=request.POST['item_text'], list=nulist)
try:
item.full_clean()
item.save()
except ValidationError:
nulist.delete()
error = "You can't have an empty list item"
return render(request, "apps/dashboard/home.html", {"error": error})
return redirect(f'/apps/dashboard/{nulist.id}/')
def view_list(request, list_id):
our_list = List.objects.get(id=list_id)
if request.method == "POST":
Item.objects.create(text=request.POST['item_text'], list=our_list)
return redirect(f'/apps/dashboard/{our_list.id}/')
return render(request, 'apps/dashboard/list.html', {'list': our_list})