プロジェクトとアクションの 2 つのモデルがあります。
class Project(models.Model):
name = models.CharField("Project Name", max_length=200, unique = True)
complete = models.BooleanField(default=False, verbose_name="Complete?")
class Action(models.Model):
name = models.CharField("Action Name", max_length=200)
project = models.ForeignKey(Project, blank=True, null=True, verbose_name="Project")
notes = models.TextField("Notes", blank=True)
complete = models.BooleanField(default=False, verbose_name="Complete?")
status = models.IntegerField("Action Status", choices = STATUS, default=0)
プロジェクトが完了としてマークされたら、そのすべてのアクションも完了としてマークされるようにしたいと思います。
私はプロジェクトの save メソッドでこれをやろうとしています:
def save(self, **kw):
self.last_modified = datetime.today()
self.action.all().update(complete=True)
super(Project, self).save(**kw)
上記の 3 行目に行き詰まっています。このプロジェクトに関連するすべてのアクションを完了するように設定する方法がよくわかりません。