Jon*_*bop 3 django django-migrations django-simple-history
django-simple-history书写历史改变instance.save()方法。但是当我写迁移更改实例数据时,更改没有出现。
是save()的方法
Model = apps.get_model('myapp', 'MyModel')
Run Code Online (Sandbox Code Playgroud)
和
MyModel
Run Code Online (Sandbox Code Playgroud)
一样吗?有没有办法将这种变化写入历史?
小智 5
django-simple-history使用post_save信号打开MyModel以保存到历史表。该信号不会在您的迁移中发送,因此您希望直接写入历史表。您必须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())
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
636 次 |
| 最近记录: |