godsplane
@godsplane

Где хранить «избранное» юзера?

У юзера есть товары, которые он может добавить в избранное.
При заходе на товар который уже в избранном у юзера, там должно быть написано "в избранном".

У меня фронт некст + кастомный бэкенд, который при авторизации отдает мне объект юзера, который я записываю в сессию.

Из того что я придумал, это получать вместе с объектом юзера, список его избранного, запихивать это в все в сессию и уже с клиента проверять в избранном даный товар или нет.
Так же можно при заходе на товар, брать айди юзера из сессии, делать запрос в бд на наличие этого товара в избранном и уже тогда узнавать в избранном товар или нет.
Но мне кажется это каким-то неоптимальным решением, какие есть еще варианты?
  • Вопрос задан
  • 271 просмотр
Решения вопроса 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега Веб-разработка
Я для решения аналогичной задачи сделал api-роут, в котором проверяется авторизация - если пользователь авторизован, то запрос проксируется на бэкенд, если не авторизован, то идёт работа с локальной сессией.
Ну а на клиенте просто в компоненте кнопки добавления в избранное через RTK-Query запрашивается id всех товаров из избранного через этот роут.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы