This commit is contained in:
2022-01-20 15:08:30 +00:00
parent 1c7baf0236
commit 188e8d83bd
3 changed files with 22 additions and 6 deletions

View File

@@ -22,6 +22,7 @@ class TaskAdmin(admin.ModelAdmin):
{
"fields": (
"title",
"slug",
"task_list",
"assigned_to",
"due_date",

View File

@@ -18,6 +18,7 @@ class DocumentInlineForm(forms.ModelForm):
model = Document
fields = [
"title",
"slug",
"date",
]

View File

@@ -14,7 +14,7 @@ from .managers import TaskManager
class TaskList(models.Model):
name = models.CharField(max_length=60)
name = models.CharField(max_length=128)
slug = models.SlugField(unique=True, null=True, blank=True)
users = models.ManyToManyField(User, blank=True)
@@ -31,9 +31,17 @@ class TaskList(models.Model):
def get_absolute_url(self):
return reverse("tasks")
def save(self, *args, **kwargs):
if not self.slug:
self.slug = slugify(self.name)
super().save(*args, **kwargs)
class Task(models.Model):
title = models.CharField(verbose_name="Titel", max_length=140)
title = models.CharField(verbose_name="Titel", max_length=128)
slug = models.SlugField(unique=True, null=True, blank=True)
task_list = models.ForeignKey(
TaskList, verbose_name="Aufgabenbereich", on_delete=models.CASCADE, null=True
)
@@ -77,6 +85,9 @@ class Task(models.Model):
return reverse("task-detail", kwargs={"pk": self.id})
def save(self, *args, **kwargs):
if not self.slug:
self.slug = slugify(self.title)
if self.completed and not self.completed_date:
self.completed_date = timezone.now().date()
@@ -88,6 +99,8 @@ class Task(models.Model):
class Document(models.Model):
title = models.CharField(verbose_name="Titel", max_length=128)
slug = models.SlugField(unique=True, null=True, blank=True)
etherpad_key = models.CharField(max_length=50, blank=True)
date = models.DateField(verbose_name="Datum", default=date.today)
@@ -107,9 +120,10 @@ class Document(models.Model):
]
def clean(self):
pad_name = slugify(
str(self.date) + "-" + self.task.title + "-" + slugify(self.title)
)
if not self.slug:
self.slug = slugify(self.title)
pad_name = slugify(str(self.date) + "-" + self.task.slug + "-" + self.slug)
if len(pad_name) > 50:
raise ValidationError(
@@ -121,7 +135,7 @@ class Document(models.Model):
def save(self, *args, **kwargs):
self.etherpad_key = createPadifNotExists(
slugify(str(self.date) + "-" + self.task.title + "-" + slugify(self.title))
slugify(str(self.date) + "-" + self.task.slug + "-" + self.slug)
)
super().save(*args, **kwargs)