В настоящее время я очень смущен использованием descendants
для ActiveRecord :: Base-Objects.Я просмотрел Интернет и протестировал все решения, но ни одно из них не соответствует моим потребностям.
Что я хочу сделать: получить массив всех подклассов ActiveRecord :: Base, включая подклассы этих подклассов, например,
Entity < ActiveRecord::Base
ChildEntity < Entity
Property < ActiveRecord::Base
Мои текущие проблемы: ActiveRecord :: Base.descendants НЕ перечисляет все классы, унаследованные от ActiveRecord :: Base.Возможно, ошибка на моей стороне: здесь мой код.
def all_entities
rec_all_entities(ActiveRecord::Base)
end
def rec_all_entities(motherEntity)
logger.debug("mother: " + motherEntity.to_s + " descendants: " + motherEntity.descendants.to_s)
motherEntity.descendants.each do |childEntity|
rec_all_entities(childEntity)
end
end
Для целей отладки я просто распечатываю.Я использую Rails 3.
Я думаю, что ошибка должна заключаться в моем коде.Я вызываю метод, который в данный момент отображается только с помощью <% all_entities %>
Спасибо за вашу помощь.