我花了两天时间努力完成这项工作。
我正在尝试使用 Django-Simple-History 进行记录而不保存历史记录。
情况如下。我有一个模型:
class Artikel(models.Model):
treaty = models.ForeignKey(Treaty)
parent = models.ForeignKey(Heading, null=True, blank=True)
artikel_type = models.CharField(max_length=255, null=False, blank=False, choices=ARTIKEL_TYPE_CHOICES)
title = models.CharField(max_length=255, null=True, blank=True)
history = HistoricalRecords()
这是我的 save() 方法
def save(self):
self.save_without_historical_record()
我是否遗漏了一些重要的东西?因为我收到此错误:
AttributeError at /admin/treaties/artikel/329/
skip_history_when_saving
和你有同样的错误。保存的方法是递归调用的,因此我向保存方法添加了附加条件。现在我的保存方法如下所示
def save(self, *args, **kwargs):
if not hasattr(self, 'skip_history_when_saving'):
return self.save_without_historical_record(*args, **kwargs)
return super(Artikel, self).save(*args, **kwargs)
希望这也适合你。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)