weranda
@weranda

Где хранить данные о заказах в корзине интернет магазина до оформления заказа?

Приветствую.
Где хранить данные о заказах в корзине интернет магазина до оформления заказа? Варианты: база данных, сессия, куки, локальное хранилище. Вроде бы, можно сделать так, как больше нравится, но наверняка есть выработанные подходы. Будет замечательно, если аргументируете.
  • Вопрос задан
  • 1016 просмотров
Решения вопроса 2
profesor08
@profesor08
  1. Если пользователь зарегистрировался и вошел в кабинет, то хранить в базе данных.
  2. Если пользователь не зарегистрирован, то хранить в localStorage или в IndexedDB, просто потому что куки и сессия может быстро протухнуть, а это очень сильно разочаровывает, когда ты накидал интересных вещей в корзину, а через некоторое время открыл сайт, а в корзине пусто.
  3. Если пользователь незарегистрированным накидал в корзину товаров, то если он зарегистрируется, то сохранить корзину в базу данных.
Ответ написан
firedragon
@firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
Заказ хранить однозначно в базе.
При первом входе пользователю кидается кука. Не важно зарегистрирован или нет. И обязательно дайте какой нибудь идентификатор, который можно ввести на другом устройстве.
В итоге получаем 4 кейса.

1. аноним (без регистрации) - просто оформляет заказ, желательно, сохранить его данные и при последующем заказе подтянуть их что бы не заполнял снова, ну и выдать сообщение мы рады что вы вернулись. Привязка по почте, телелефону или адресу
2. аноним (он зарегистрирован, но пока не вошел) - при оформлении нужно показать сообщение мол вы можете войти и заполнить все данные автоматом
3. уже вошел в систему - тут просто оплата
4. ввод номера заказа на другом устройстве, тут устанавливается кука и подтягиваются данные с сервера
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
AlexNest
@AlexNest
Работаю с Python/Django
Не думаю, что можно дать конкретный ответ - тут многое зависит от того, какие технологие используете и на какие платформы нацелены.
К примеру, если предполагаете, что в будущем появиться мобильное приложение и/или перепишите фронт на условном react/vue/[подставить свое], то лучше хранить в базе.
Если точно знаете, что дальше сайта не уйдете - можно и в сессии.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
Искра Екатеринбург
от 80 000 до 100 000 ₽
Art gorka Санкт-Петербург
от 60 000 ₽
25 апр. 2024, в 12:23
2500 руб./за проект
25 апр. 2024, в 12:21
10000 руб./за проект