Существует таблица «Продукты» с колонками (id, плитка, цена, описание, shop_id, временные метки) Цена колонки и shop_id являются динамическими. Остальная часть столбца статична.Rails Postgres hstore или jsonb для хранения многих-многих отношений
Также есть таблица «Магазины» с колонками (id, name, timestamps).
В магазине много товаров. Продукт может мигрировать среди всех магазинов и продуктов. Shop_id может быть пустым.
Я хочу иметь историю о том, какие продукты есть в магазине. Например, вчерашний магазин имел продукты и их цены. Позавчера магазин имел другие продукты и/или другие их цены. Поэтому я хочу иметь что-то вроде
«ShopHistory» (id, data, date, timestamps), где данные hstore или json. Поэтому он должен иметь хеш, например {key: value}, где ключ - это идентификатор продукта, а значение - его текущая цена. Но я хотел бы присоединиться к столбцу данных с продуктами, чтобы узнать о названии и описании продуктов. Я не знаю, как это сделать. Похоже, ShopHistory представляет собой таблицу соединений между магазином и продуктами, но вся информация хранится в одной строке.
Можем ли мы мне помочь? Может быть, кто-нибудь знает лучший способ реализовать все это. Любые мысли и статьи приветствуются.
Спасибо!
P.S. Я использую рельсы (ActiveRecord) и PostgreSQL, но ответы от парней, которые знают только Postgres, тоже хороши для меня.