ddimonn8080
@ddimonn8080

Как хранить цены на товары в БД?

Здравствуйте, есть интернет-магазин. Например, две валюты - доллар и евро. Одна из валют является текущей, то есть той в которой все цены на сайте. Например, в бд записаны все цены в долларах и нужно поменять текущую валюту на евро. Навряд ли цены в базе должны пересчитываться каждый раз когда меняется текущая валюта? Как обычно хранится цена на товары? Предполагаю что цены в валюте по умолчанию, а при смене валюты на другую цена выводимая в view пересчитывается в другую валюту соответственно текущему курсу?

Спасибо.
  • Вопрос задан
  • 498 просмотров
Решения вопроса 3
@aleks-th
По хорошему чтобы избежать лишних ошибок хранить одну базовую цену.
И таблицу с текущим курсом.
И при запросе пересчитывать.
--

А иначе скажем у вас 5 валют. И много товаров.
Вы меняете ценник, в момент изменения цен что-то и дет не так и кирдык, получаете не связанную базу где цены друг другу хаотично не соответствуют.
Ответ написан
inoise
@inoise
Solution Architect, AWS Certified, Serverless
храните отдельно таблицу с текущим курсом, и в товаре валюту в которой внесена его стоимость. Остальное - рендеринг
Ответ написан
Комментировать
Krasnodar_etc
@Krasnodar_etc
avito front
Да, можно хранить в стандартной валюте, а выводить юзеру в зависимости от выбранной валюты (по пути рассчитывать её по текущему курсу)

А можно хранить в БД цены сразу в нескольких валютах.
На мой взгляд, примерно одинаковые варианты с точки зрения правильности)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы