我已经有了两种模式:消息和附件。每个附件附于一个特定的消息,使用一个外键在本附件的模式。这两个模型具有auto_now DateTimeField称为更新。我试图让这个时的任何附件在保存,还将更新的领域上的相关信息。这是我的代号:

def save(self):
    super(Attachment, self).save()
    self.message.updated = self.updated

将这项工作,并且如果可以解释给我,为什么?如果没有,我将如何做到这一点?

有帮助吗?

解决方案

您还需要保存的信息。然后,它应的工作。

其他提示

DateTime领域与auto_now是自动更新的在叫 save(), 所以你不需要更新。Django会做这对你的工作。

适当的版本的工作是:(注意到最后一行 self.message.save())

class Message(models.Model):
    updated = models.DateTimeField(auto_now = True)
    ...

class Attachment(models.Model):
    updated = models.DateTimeField(auto_now = True)
    message = models.ForeignKey(Message)

    def save(self):
        super(Attachment, self).save()
        self.message.save()
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top