teilchensammler/collector/views.py

37 lines
1 KiB
Python

import logging
from django.http import HttpRequest, HttpResponse, HttpResponseRedirect
from django.shortcuts import get_object_or_404, render
from django.urls import reverse
from .models import Teil
logger = logging.getLogger(__name__)
def index(request: HttpRequest) -> HttpResponse:
teile_list = Teil.objects.order_by("-modified")[:10]
context = {
"teile_list": teile_list,
}
return render(request, "collector/index.html", context)
def list_all(request: HttpRequest) -> HttpResponse:
teile_list = Teil.objects.order_by("-modified")
return render(request, "collector/index.html", {"teile_list": teile_list})
def detail(request: HttpRequest, teil_id) -> HttpResponse:
teil = get_object_or_404(Teil, pk=teil_id)
return render(request, "collector/detail.html", {"teil": teil})
def enter(request: HttpRequest) -> HttpResponse:
try:
Teil.objects.create(name=request.POST["new_name"])
except Exception:
logger.warning("Teil already existed")
return HttpResponseRedirect(reverse("collector:index"))