В моем приложении rails я пытаюсь выбрать все дочерние модели («pdfs», «видео», «инфографика»), которые имеют ссылку на родительскую модель («категория»). Эти три дочерние модели могут принадлежать только одной из трех родительских моделей (это выполняется с использованием проверки Exclusive ar c в дочерних моделях). Таким образом, у них есть один шанс из трех принадлежать моей родительской модели («категория»).
Есть ли способ выбрать все дочерние модели («pdfs», «видео», «инфографика»), которые привязан к моей указанной c родительской модели («категория»)? Если я смогу это сделать, можно ли отсортировать каждый из этих экземпляров дочерних моделей по дате их создания? И, наконец, смогу ли я иметь этот упорядоченный список дочерних экземпляров в виде массива, чтобы я мог перебирать его в представлении?
Спасибо за вашу помощь! Модель настроена ниже.
Родительская модель:
class Category < ApplicationRecord
belongs_to :navbar_base_folder
has_many :sub_categories, dependent: :destroy
has_many :infographics, dependent: :destroy
has_many :videos, dependent: :destroy
has_many :pdfs, dependent: :destroy
end
Трое детей:
class Pdf < ApplicationRecord
belongs_to :sub_category, optional: true
belongs_to :category, optional: true
belongs_to :secret_category, optional: true
belongs_to :secret_sub_category, optional: true
end
class Video < ApplicationRecord
belongs_to :sub_category, optional: true
belongs_to :category, optional: true
belongs_to :secret_category, optional: true
belongs_to :secret_sub_category, optional: true
end
class Infographic < ApplicationRecord
belongs_to :sub_category, optional: true
belongs_to :category, optional: true
belongs_to :secret_category, optional: true
belongs_to :secret_sub_category, optional: true
end