将迁移更改写入 django 简单历史
Write migration changes to django simple history
django-simple-history
写入历史记录在 instance.save()
方法上发生了变化。但是当我编写更改实例数据的迁移时,更改没有出现。
是
的save()
方法
Model = apps.get_model('myapp', 'MyModel')
和
MyModel
一样吗?有没有办法将此更改写入历史记录?
django-simple-history
在 MyModel
上使用 post_save
信号以保存到历史 table。该信号不会在您的迁移中发送,因此您想直接写入历史 table。您必须为历史 table 添加一个 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())
django-simple-history
写入历史记录在 instance.save()
方法上发生了变化。但是当我编写更改实例数据的迁移时,更改没有出现。
是
的save()
方法
Model = apps.get_model('myapp', 'MyModel')
和
MyModel
一样吗?有没有办法将此更改写入历史记录?
django-simple-history
在 MyModel
上使用 post_save
信号以保存到历史 table。该信号不会在您的迁移中发送,因此您想直接写入历史 table。您必须为历史 table 添加一个 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())