Цель: Я хочу показать все категории, которые в настоящее время существуют в модели листинга.
Например, листинг может иметь много категорий.Скажем, у меня есть 100 категорий и 10 списков, но только 20 из этих категорий в настоящее время используются в Listing.category_ids, я только хочу, чтобы они отображались.
Я пробовал:
@categories = Category.all.where(id: @listings.each {|listing| listing.category_ids})
@categories = Category.where(id: Listing.all.includes(:category_ids)).order(name: :asc)
@categories = Category.where(id: [@listings.each {|listing| listing.category_ids}])
И некоторые другие подобные способы.Кстати, я использую Postgres.
Обе эти попытки появились только в первой категории в модели категории, хотя эта категория не используется.
Модели:
Listing
has_and_belongs_to_many :categories
Категории:
has_and_belongs_to_many :listings
У меня тогда есть таблица присоединения Categories_Listings, тоже t для всего этого.Вот где хранятся ассоциации.