diff --git a/aviary/models.py b/aviary/models.py index af2a6a9..6329afe 100644 --- a/aviary/models.py +++ b/aviary/models.py @@ -1,12 +1,19 @@ from uuid import uuid4 + from django.db import models +from django.utils.translation import gettext_lazy as _ class Aviary(models.Model): id = models.UUIDField(primary_key=True, default=uuid4, editable=False) - description = models.CharField(max_length=256) - condition = models.CharField(max_length=256) - last_ward_round = models.DateField() + description = models.CharField( + max_length=256, verbose_name=_("Beschreibung")) + condition = models.CharField(max_length=256, verbose_name=_("Zustand")) + last_ward_round = models.DateField(verbose_name=_("letzte Visite")) + + class Meta: + verbose_name = _("Voliere") + verbose_name_plural = _("Volieren") def __str__(self): return self.description diff --git a/aviary/templates/aviary/aviary_all.html b/aviary/templates/aviary/aviary_all.html new file mode 100644 index 0000000..e69de29 diff --git a/aviary/urls.py b/aviary/urls.py new file mode 100644 index 0000000..1e77154 --- /dev/null +++ b/aviary/urls.py @@ -0,0 +1,9 @@ +from django.urls import path + +from .views import ( + aviary_all +) + +urlpatterns = [ + path("all/", aviary_all, name="aviary_all"), +] diff --git a/aviary/views.py b/aviary/views.py index 91ea44a..3e76332 100644 --- a/aviary/views.py +++ b/aviary/views.py @@ -1,3 +1,11 @@ +from django.contrib.auth.decorators import login_required from django.shortcuts import render -# Create your views here. +from .models import Aviary + + +@login_required(login_url="account_login") +def aviary_all(request): + aviaries = Aviary.objects.all() + context = {"aviaries": aviaries} + return render(request, "aviary/aviary_all.html", context) diff --git a/bird/models.py b/bird/models.py index 38ab17b..59ea4e2 100644 --- a/bird/models.py +++ b/bird/models.py @@ -2,36 +2,39 @@ from uuid import uuid4 from django.conf import settings from django.db import models +from django.utils.translation import gettext_lazy as _ from aviary.models import Aviary from rescuer.models import Rescuer -# STATUS = [ -# ("In Behandlung", "In Behandlung"), -# ("In Auswilderung", "In Auswilderung"), -# ("Ausgewildert", "Ausgewildert"), -# ("Verstorben", "Verstorben"), -# ] - - class FallenBird(models.Model): id = models.UUIDField(primary_key=True, default=uuid4, editable=False) - bird = models.ForeignKey("Bird", on_delete=models.CASCADE) - date_found = models.DateField() - place = models.CharField(max_length=256) - created = models.DateTimeField(auto_now_add=True) - updated = models.DateTimeField(auto_now=True) + bird = models.ForeignKey( + "Bird", + on_delete=models.CASCADE, + verbose_name=_("Patient")) + date_found = models.DateField(verbose_name=_("Datum des Fundes")) + place = models.CharField(max_length=256, verbose_name=_("Ort des Fundes")) + created = models.DateTimeField( + auto_now_add=True, + verbose_name=_("angelegt am")) + updated = models.DateTimeField( + auto_now=True, verbose_name=_("geändert am")) diagnostic_finding = models.CharField(max_length=256) cost_sum = models.DecimalField(max_digits=4, decimal_places=2) rescuer = models.ForeignKey( Rescuer, on_delete=models.SET_NULL, blank=True, null=True) user = models.ForeignKey( settings.AUTH_USER_MODEL, on_delete=models.CASCADE) - aviary = models.ForeignKey( - Aviary, on_delete=models.SET_NULL, blank=True, null=True) status = models.ForeignKey( "BirdStatus", on_delete=models.SET_NULL, blank=True, null=True) + aviary = models.ForeignKey( + Aviary, on_delete=models.SET_NULL, blank=True, null=True) + + class Meta: + verbose_name = _("Patient") + verbose_name_plural = _("Patienten") def __str__(self): return self.place @@ -41,6 +44,10 @@ class Bird(models.Model): id = models.UUIDField(primary_key=True, default=uuid4, editable=False) name = models.CharField(max_length=256) + class Meta: + verbose_name = _("Vogel") + verbose_name_plural = _("Vögel") + def __str__(self): return self.name @@ -49,5 +56,9 @@ class BirdStatus(models.Model): id = models.UUIDField(primary_key=True, default=uuid4, editable=False) description = models.CharField(max_length=256) + class Meta: + verbose_name = _("Patientenstatus") + verbose_name_plural = _("Patientenstatus") + def __str__(self): return self.description diff --git a/bird/templates/bird/bird_single.html b/bird/templates/bird/bird_single.html index d8a4cea..10e21ff 100644 --- a/bird/templates/bird/bird_single.html +++ b/bird/templates/bird/bird_single.html @@ -4,7 +4,7 @@ {% block content %}

Patient {{ bird.bird }} bearbeiten

-
+
{% csrf_token %} diff --git a/core/urls.py b/core/urls.py index 4712463..92e09b7 100644 --- a/core/urls.py +++ b/core/urls.py @@ -21,6 +21,7 @@ urlpatterns = [ # Dynamic sites path("bird/", include("bird.urls")), path("rescuer/", include("rescuer.urls")), + path("aviary/", include("aviary.urls")), # Admin path("admin/", admin.site.urls), # Allauth diff --git a/templates/partials/_navbar.html b/templates/partials/_navbar.html index 99aad1c..07c6f9e 100644 --- a/templates/partials/_navbar.html +++ b/templates/partials/_navbar.html @@ -20,6 +20,10 @@ alle Retter + {% endif %} @@ -41,4 +45,4 @@
-
\ No newline at end of file +