from django.db import models from django.contrib.auth.models import AbstractUser from django.contrib.auth.models import Group as BuiltinGroup class User(AbstractUser): groups = models.ManyToManyField( "auth.Group", related_name="user_groups", blank=True, ) user_permissions = models.ManyToManyField( "auth.Permission", related_name="user_permissions", blank=True, ) class Group(BuiltinGroup): class Meta: proxy = True class Berichtsheft(models.Model): id = models.AutoField(primary_key=True) user = models.TextField() num = models.PositiveBigIntegerField(default=0) year = models.PositiveIntegerField() week = models.PositiveSmallIntegerField() content = models.JSONField() created = models.DateTimeField(auto_now_add=True) def __str__(self): return ( f"Berichtsheft: {self.user.username}, Year: {self.year}, Week: {self.week}" ) class Approval: id = models.AutoField(primary_key=True) user = models.TextField() report = models.ForeignKey( Berichtsheft, on_delete=models.CASCADE, related_name="report" )