@9karamba

Вывод товаров из нескольких категорий?

У меня пользователь может подписываться на категории. Я хочу разместить на главной страницы все товары из категорий, на которые подписан человек. Подписка с помощью вспомогательной модели Subscription, в которой храниться user_id и category_id.

Как мне это сделать? В каком направлении искать информацию об этом?

Единственное что я нашла это, если все подписки пользователя будут храниться в его таблице. Но по моему это не хорошо
  • Вопрос задан
  • 71 просмотр
Пригласить эксперта
Ответы на вопрос 1
oh_shi
@oh_shi
Если пропишите все ассоциации в моделях, то сможете потом получать список продуктов через @user.products. Внутри там получаются несколько INNER JOIN и как альтернативный вариант можете сами составить такой запрос.
class User < ApplicationRecord
  has_many :subscriptions
  has_many :categories, through: :subscriptions
  has_many :products, through: :categories
end

class Subscription < ApplicationRecord
  belongs_to :user
  belongs_to :category
  has_many :products, through: :categories
end

class Category < ApplicationRecord
  has_many :subscriptions
  has_many :products
end

class Product < ApplicationRecord
  belongs_to :category
end
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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