@ErikHabr

Как правильно реализовать добавление товара с опциями в корзину на Django Rest Framework?

Нужна помощь, а то я запутался.
Я пишу аналог яндекс еды и прочих платформ. Пишу сейчас API на django rest framework.
У меня реализованна корзина через БД. Я ее сохраняю с ключем сессии, если пользователь как гость или привязываю к пользователю, если он авторизован. У меня все так через бд и работает: применение промокодов, бонусов, мин. сумма заказа и прочее.
Так вот теперь, как говорится финальный штрих. У товаров есть модификаторы и добавки. К примеру выбирая пиццу можно выбрать ее размер (модификатор) и добавить грибов и перчиков (добавки). Я реализовал это через сессию, в итоге у меня есть массив с данными если добавились какие-то опции к товару и есть корзины которая в бд.

И тут я запутался, если я добавлю просто товар в корзину (без опций), он там и окажется, но если в сессии есть такой же товар с опциями, то я ищу это дело по id и кладу товар и опции в корзину из сессии. Но я не могу положить один и тот же товар с разными опциями как разные товары так как товар проверяется по id. Я не могу положить товары которые были добавлены до сессии или просто товары без опций, если существуют в корзине товары из сессии. Короче полная ерунда получается. Я конечно могу заколхозить как это все дальше, но все уже работает не так как должно.

Кто может помочь или у кого есть опыт и знания в реализации таких корзин и товаров. Желательно все на бекенде сделать. Нужно ли всю корзину переписать теперь и не сохранять ее в бд, а только в сессии работать?
Готов данную проблему оплатить, если кто-то может взяться за реализацию. Готов оплатить по скайпу консультацию и помощь в написании кода.
  • Вопрос задан
  • 255 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

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