add slug
This commit is contained in:
@@ -22,6 +22,7 @@ class TaskAdmin(admin.ModelAdmin):
|
|||||||
{
|
{
|
||||||
"fields": (
|
"fields": (
|
||||||
"title",
|
"title",
|
||||||
|
"slug",
|
||||||
"task_list",
|
"task_list",
|
||||||
"assigned_to",
|
"assigned_to",
|
||||||
"due_date",
|
"due_date",
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ class DocumentInlineForm(forms.ModelForm):
|
|||||||
model = Document
|
model = Document
|
||||||
fields = [
|
fields = [
|
||||||
"title",
|
"title",
|
||||||
|
"slug",
|
||||||
"date",
|
"date",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ from .managers import TaskManager
|
|||||||
|
|
||||||
|
|
||||||
class TaskList(models.Model):
|
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)
|
slug = models.SlugField(unique=True, null=True, blank=True)
|
||||||
|
|
||||||
users = models.ManyToManyField(User, blank=True)
|
users = models.ManyToManyField(User, blank=True)
|
||||||
@@ -31,9 +31,17 @@ class TaskList(models.Model):
|
|||||||
def get_absolute_url(self):
|
def get_absolute_url(self):
|
||||||
return reverse("tasks")
|
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):
|
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(
|
task_list = models.ForeignKey(
|
||||||
TaskList, verbose_name="Aufgabenbereich", on_delete=models.CASCADE, null=True
|
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})
|
return reverse("task-detail", kwargs={"pk": self.id})
|
||||||
|
|
||||||
def save(self, *args, **kwargs):
|
def save(self, *args, **kwargs):
|
||||||
|
if not self.slug:
|
||||||
|
self.slug = slugify(self.title)
|
||||||
|
|
||||||
if self.completed and not self.completed_date:
|
if self.completed and not self.completed_date:
|
||||||
self.completed_date = timezone.now().date()
|
self.completed_date = timezone.now().date()
|
||||||
|
|
||||||
@@ -88,6 +99,8 @@ class Task(models.Model):
|
|||||||
|
|
||||||
class Document(models.Model):
|
class Document(models.Model):
|
||||||
title = models.CharField(verbose_name="Titel", max_length=128)
|
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)
|
etherpad_key = models.CharField(max_length=50, blank=True)
|
||||||
date = models.DateField(verbose_name="Datum", default=date.today)
|
date = models.DateField(verbose_name="Datum", default=date.today)
|
||||||
|
|
||||||
@@ -107,9 +120,10 @@ class Document(models.Model):
|
|||||||
]
|
]
|
||||||
|
|
||||||
def clean(self):
|
def clean(self):
|
||||||
pad_name = slugify(
|
if not self.slug:
|
||||||
str(self.date) + "-" + self.task.title + "-" + slugify(self.title)
|
self.slug = slugify(self.title)
|
||||||
)
|
|
||||||
|
pad_name = slugify(str(self.date) + "-" + self.task.slug + "-" + self.slug)
|
||||||
|
|
||||||
if len(pad_name) > 50:
|
if len(pad_name) > 50:
|
||||||
raise ValidationError(
|
raise ValidationError(
|
||||||
@@ -121,7 +135,7 @@ class Document(models.Model):
|
|||||||
|
|
||||||
def save(self, *args, **kwargs):
|
def save(self, *args, **kwargs):
|
||||||
self.etherpad_key = createPadifNotExists(
|
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)
|
super().save(*args, **kwargs)
|
||||||
|
|||||||
Reference in New Issue
Block a user