Я пытаюсь создать систему, в которой я настроил проблему, и она автоматически создает настраиваемые поля, которые пользователь определит, сохраненные в другой модели.Я установил текущую модель с отношением «многие ко многим» к модели настраиваемого поля и переписал метод сохранения, чтобы каждое из настраиваемых полей было добавлено со значением по умолчанию.
Когда я использую .addМетод после сохранения моей модели проблем, кажется, ничего не происходит, отношения многие ко многим не создаются.Отношения могут быть установлены в интерфейсе администратора Django.
класс Issue (models.Model):
class Meta:
verbose_name = "Issues"
verbose_name_plural = "Issues"
title = models.TextField(null=False, blank=False)
description = models.TextField()
owner = models.ForeignKey(Organisation, on_delete=models.CASCADE)
category = models.ForeignKey(IssueCategory, on_delete=models.CASCADE)
state = models.ForeignKey(IssueStates, on_delete=models.CASCADE)
project = models.ForeignKey(Project, on_delete=models.CASCADE)
assignedTo = models.ForeignKey(User, on_delete=models.SET_NULL, null=True)
customFields = models.ManyToManyField(IssueCustomFields, blank=True)
def save(self, *args, **kwargs):
super(Issue, self).save(*args, **kwargs)
for x in IssueCustomFieldDefinitions.objects.filter(owner=self.owner):
issueCustom = IssueCustomFields.objects.create(
value=x.default,
fieldDefinition = x,
owner = self.owner,
)
self.customFields.add(issueCustom)
print(self.customFields.all())
Я ожидаю, что при сохранении модели Issue она перебирает все настраиваемые пользователем поля и создает экземпляроб этом, а также установление отношений.Связь никогда не устанавливается (хотя экземпляры создаются)