Как реализовать версионирование моделей в Django, не затрагивая транзакционные данные

МОДЕЛИ

Модель транзакций

class TransactionOrders(models.Model):
    product = models.ForeignKey(Product, on_delete=models.DO_NOTHING)
    customer = models.ForeignKey(Customer, on_delete=models.DO_NOTHING)
    ...

class Product(models.Model):
    name = models.CharField(max_length=55, unique=True)
    title = models.TextField()
    ...

class Customer(models.Model):
    customer_id = models.CharField(max_length=55,  primary_key=True)
    name = models.CharField(max_length=100)

# there might be more models

Представьте, что у нас есть несколько записей в transaction model теперь администратор updated или soft deleted некоторые записи в product | customer модели

проблема: Old data изменен либо с помощью new value, либо с помощью ids (чьи записи обновлены | удалены соответственно)

Требование: Как я могу избежать вышеуказанной проблемы Чтобы при создании пользователем нового order обновленного значения отражался & когда пользователь посещает историю заказов, то в ней отображаются записи, которые имеют значения на тот момент

Примечание: Если я не смог прояснить ситуацию, дайте мне знать, я постараюсь предоставить больше данных, чтобы сделать мой запрос понятным

Вернуться на верх