Django-simple-history:如何访问多对多字段的历史值?
django-simple-history多对多字段历史数据访问问题解答
- 是的,你必须通过
historicObj.m2m_field.history.as_of([过去的日期])这种方式来获取多对多字段的历史数据。 - 原因:django-simple-history默认仅追踪主模型的历史状态,多对多关联的模型历史不会自动绑定到主模型的历史对象上。直接调用
historicObj.m2m_field.all()时,查询的是当前数据库中该字段的关联数据,而非你指定的历史时间点的状态。 - 注意事项:要确保多对多关联的目标模型已经通过
@register_simple_history装饰器开启了历史记录功能,否则无法通过.history.as_of()方法获取到对应时间点的历史数据。
内容的提问来源于stack exchange,提问作者Dasch
相关产品推荐
相关产品推荐

