Я хотел бы смочь выполнить итерации и осмотреть все модели в моем приложении для направляющих. В псевдокоде это посмотрело бы что-то как:
rails_env.models.each do |model|
associations = model.reflect_on_all_associations(:has_many)
... do some stuff
end
Мой вопрос состоит в том, как я осматриваю свое приложение для направляющих для получения набора моделей (rails_env.models)?
Итерация по всем файлам в `$RAILS_ROOT\app\models' ?
Например
def find_all_models
# iterate over all files in folder
folder = File.join(RAILS_ROOT, "app", "models")
Dir[File.join(folder, "*")].each do |filename|
# remove .rb
model_name = File.basename(filename).sub(/.rb$/, '').capitalize
model = Kernel.const_get(model_name)
# .. do something with your model :)
end
end
Помогает ли это?