Не могу редактировать булево поле в модели django, когда оно связано с другим полем из той же модели в рамках этой логической сенсации?

Я работаю над django v4.* и столкнулся с тем, что мне нужно сделать так, чтобы поле publish_date автоматически заполнялось, когда is_published is ticked

import datetime
class Article(models.Model):
     .......
     is_published = models.BooleanField(default=False)
     publish_date = models.DateTimeField(blank=True, null=True)
     .......
     def save(self, *args, **kwargs):
        if self.is_published:
           self.publish_date = datetime.datetime.now()
           super().save(*args, **kwargs)

это помогло, но проблема в том, что я больше не могу редактировать поле is_published, когда я отмечаю его (делаю его истинным), оно остается истинным, даже если я пытаюсь изменить его на не отмеченное

Теперь ваше действие сохранения является частью оператора if:. Опустите его на уровень отступа, чтобы оно всегда завершало функцию

 def save(self, *args, **kwargs):
    if self.is_published:
       self.publish_date = datetime.datetime.now()
    super().save(*args, **kwargs)
Вернуться на верх