Проблемы с функциональностью повторяющихся контрольных списков (Django)

Вот моя текущая установка, упрощенная

class projects(models.Model):
    fk_user = models.ForeignKey(User, default='1', on_delete=models.CASCADE)
    title = models.CharField(max_length=150)

class projects_checklistItems(models.Model):
    fk_project = models.ForeignKey(projects, on_delete=models.CASCADE)
    b_task1 = models.BooleanField(defaut=False)
    b_task2 = models.BooleanField(defaut=False)
    b_task3 = models.BooleanField(defaut=False)

Проблема в том, что я хочу, чтобы пользователи могли добавлять свои собственные пункты контрольного списка в каждый проект, поскольку они будут иметь свои собственные зависимости и условия.

В результате я могу сделать следующее:

class projects(models.Model):
     fk_user = models.ForeignKey(User, default='1', on_delete=models.CASCADE)
     title = models.CharField(max_length=150)
     fkj_checklistItems = models.ManyToManyField(checklistItems, through="j_projects_checklistItems")


class checklistItems(models.Model):
    name = models.CharField(max_length=150)

class j_projects_checklistItems(models.Model):
    fk_project = models.ForeignKey(projects, on_delete=models.CASCADE)
    fk_checklistItem = models.CharField(checklistItems, on_delete=models.CASCADE)
    b_completed = models.BooleanField(default=False) 

Однако я хочу, чтобы существовал стандартный / начальный выбор элементов контрольного списка (т.е. задач), которые являются общими для каждого проекта. Таким образом, после создания проекта ему автоматически присваивается набор из 20, 30, может быть, 50 элементов контрольного списка"

<<<Отсюда пользователь может отсеять те, которые неактуальны, и добавить новые. Возможно, изменив модель перехода следующим образом:

   class j_projects_checklistItems(models.Model):
        fk_project = models.ForeignKey(projects, on_delete=models.CASCADE)
        fk_checklistItem = models.CharField(checklistItems, on_delete=models.CASCADE)
        b_completed = models.BooleanField(default=False) 
      * b_active = models.BooleanField(default=True)  

Но я не знаю, как установить эти элементы по умолчанию, которые должны быть общими для всех проектов.

Вернуться на верх