price, соответственно пользователь создаёт заказ добавляя в него продукты и совершает покупку. В дальнейшем по заказам необходимо будет делать различные отчёты, но проблема в том, что если в дальнейшем цены на продукты изменятся, то отчёты будут давать некорректные данные, т.к. у уже совершённых заказов будут вычисляться другие цены (т.к. связанные с ними продукты поменяют цену). Какие есть варианты?
Я вижу несколько:
1. Создать таблицу-лог, в которую писать все данные по совершённому заказу без внешних ключей, как есть (что-то типа чеков).
2. Во время создания заказа суммировать цены продуктов и писать их в поле price но уже у заказа, но это кажется не гибким.
Как можно поступить?
Все заказы имеют «содержимое». Содержимое это товары. На момент покупки товар кладётся грубо в корзину и является частью заказа.
Вы можете храните цену продукта в пунктах заказа (order_items)
сохраняйте в Order - текущие значения на момент заказа , и потом стройте по ним отчеты
Обсуждают сегодня