36 lines
1.1 KiB
Python
Executable file
36 lines
1.1 KiB
Python
Executable file
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()
|
|
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")
|
|
|