from django.db import models from django.contrib.auth.models import User from users.models import Agency from django.urls import reverse from areas.models import Areas from tasks.models import Tasks from cloud.models import DataFile from users.models import AgencyGroup import datetime from django.utils import timezone #from ckeditor_uploader.fields import RichTextUploadingField class Standards(models.Model): agency = models.ForeignKey(Agency, on_delete=models.CASCADE) area = models.ForeignKey(Areas, on_delete=models.CASCADE) task = models.ForeignKey(Tasks, on_delete=models.CASCADE) name = models.CharField(max_length=200, blank=False, default="") content = models.TextField(blank=True, verbose_name='Inhalt', default="") created_standard_by = models.ForeignKey(User, on_delete=models.PROTECT) created_standard_date = models.DateTimeField(default=timezone.now, blank=True) published_by = models.ForeignKey(User, on_delete=models.PROTECT, related_name='user_published_standard', default=None) published_on = models.DateTimeField(default=timezone.now, blank=True) last_modified_by = models.ForeignKey(User, on_delete=models.PROTECT, related_name='user_modified_standard', default=None) last_modified_on = models.DateTimeField(default=timezone.now, blank=True) public_a = models.BooleanField(default=False) # USER # VERTRETER representative_a = models.ForeignKey(User, on_delete=models.PROTECT, related_name="user_repr", blank=True, null=True) # AUSFÜHRENDER executor_a = models.ForeignKey(User, on_delete=models.PROTECT, related_name="user_executor", blank=True, null=True) # VERANTWORTLICHER authority_a = models.ForeignKey(User, on_delete=models.PROTECT, related_name="user_authority", blank=True, null=True) # FILES addedfiles_a = models.ManyToManyField(DataFile, blank=True) # VERLINKTE STANDARDS linked_standards_a = models.ManyToManyField('Standards', blank=True) # GORUPS visibleby_a = models.ManyToManyField(AgencyGroup, blank=True) def __str__(self): return f'{self.name}' # Hier Path für Templates des Models mit Parametern def get_absolute_url(self): return reverse('standards-update', kwargs={'pk':self.pk})