Есть 2 модели:
class A(models.Model):
id = models.PositiveIntegerField(default=0, primary_key=True)
version = models.PositiveIntegerField(default=0)
value = models.PositiveIntegerField(default=0)
class B(models.Model):
id = models.PositiveIntegerField(default=0, primary_key=True)
version = models.PositiveIntegerField(default=0)
a_value = models.ForeignKey(A, on_delete=models.DO_NOTHING)
Как сделать так, чтобы при обращении к полю
a_value в модели
B учитывалось поле
version? Грубо говоря вместо
A.objects.get(pk=self.a_value)
выполнялось
A.objects.get(pk=self.a_value, version=self.version)
Мне в голову пришло использование property, но может быть есть более изящный способ?