我有一个名为的模型Order
和另一个OrderItem
. 该OrderItem
表具有该表的外键Order
。现在我在两个模型上都安装并设置了 [simple-history][1]。我尝试获取订单历史记录,并使用OrderItem
表上的相关名称从历史记录中获取相关的 OrderItem,但它返回错误:
AttributeError:“HistoricalOrder”对象没有属性“order_items”
这是我的Order
和OrderItem
桌子。
class OrderItem(models.Model):
order = models.ForeignKey(
"Order", on_delete=CASCADE, related_name="order_items"
)
content_type = models.ForeignKey(ContentType, on_delete=models.RESTRICT)
object_id = models.PositiveIntegerField()
content_object = GenericForeignKey("content_type", "object_id")
history = HistoricalRecords()
.......
class Order(models.Model):
po_id = models.CharField(max_length=50, unique=True, blank=True, null=True)
history = HistoricalRecords()
.....
以下命令给了我一个命令。
order = Order.history.filter(id=102).first()
但是如果我运行,order.order_items.all()
那么我会得到属性错误。
如果我在实际模型上运行查询,那么我会使用以下命令获取 order_items。
Order.objects.get(id=102).order_items.all()
是否可以像普通 django 模型一样从历史表中获取 order_items。我怎样才能做到这一点。
谢谢你。[1]:https ://django-simple-history.readthedocs.io/en/latest/index.html