django-simple-history编写历史记录会改变instance.save()方法。但是,当我编写更改实例数据的迁移时,这些更改没有出现。
的save()方法。
Model = apps.get_model('myapp', 'MyModel') 和
MyModel 都一样吗?有没有办法把这些变化写到历史上?
发布于 2018-08-13 17:01:07
为了保存到历史表,django-simple-history在MyModel上使用post_save信号。这个信号不是在迁移时发送的,所以您想直接写到历史表。您必须为历史表包括一个history_date字段。以下内容应能发挥作用:
from datetime import datetime
Model = apps.get_model('myapp', 'MyModel')
HistoricalModel = apps.get_model('myapp', 'HistoricalMyModel')
instance = Model.objects.create(name='Test')
HistoricalModel.objects.create(name=instance.name, id=instance.id, history_date=datetime.now())https://stackoverflow.com/questions/51427719
复制相似问题