Я разрабатываю систему, в которой пользователям необходимо сопоставлять поля моделей из нескольких моделей.Чтобы помочь им, я создал логическое поле «is_orphan», чтобы указать, должно ли существовать обязательное отношение (в данном случае ForeignKey), но пока нет.Он обновляется как часть процедуры сохранения - пример ниже:
class Caption(models.Model):
caption = models.TextField()
is_orphan = models.BooleanField()
def save(self, *args, **kwargs):
art_set = self.art_set.all()
if len(art_set) != 0:
self.is_orphan = False
else:
self.is_orphan = True
super(Caption, self).save(*args, **kwargs)
Моя проблема заключается в том, что когда я использую администратора, чтобы снять подпись с другой стороны отношений (Art), изменение в сиротеСтатус подписи не отображается, если я не пройду процедуру сохранения подписи.Есть ли способ автоматически обновлять caption.is_orphan
изнутри модели Art, когда пользователь изменяет заголовок, связанный с искусством, на новый заголовок или вообще без заголовка?