У меня есть скрипт, который я хотел бы проверить в рельсах консолиDebugging в Рельсы консоли
Gem.find_files("models/*.rb").each do |f|
filename = File.basename(f, '.*')
class_name_symbol = filename.classify.to_sym
autoload class_name_symbol, "models/#{filename}"
end
, что я хотел бы сделать, это распечатать результаты в консоли, но может только получить как вывод массив с помощью
Gem.find_files("models/*.rb")
, который возвращает этот
["/home/richardlewis/.rvm/gems/[email protected]/bundler/gems/blogModels-8360dfc861ad/lib/models/portfolio_sector.rb", "/home/richardlewis/.rvm/gems/[email protected]/bundler/gems/blogModels-8360dfc861ad/lib/models/post.rb", "/home/richardlewis/.rvm/gems/[email protected]/bundler/gems/blogModels-8360dfc861ad/lib/models/image.rb", "/home/richardlewis/.rvm/gems/[email protected]/bundler/gems/blogModels-8360dfc861ad/lib/models/message.rb", "/home/richardlewis/.rvm/gems/[email protected]/bundler/gems/blogModels-8360dfc861ad/lib/models/sector.rb", "/home/richardlewis/.rvm/gems/[email protected]/bundler/gems/blogModels-8360dfc861ad/lib/models/portfolio.rb", "/home/richardlewis/.rvm/gems/[email protected]/bundler/gems/blogModels-8360dfc861ad/lib/models/category.rb"]
советы оценили
После использования ответа выход
models/portfolio_sector
models/post
models/message
models/sector
models/portfolio
models/category
=> ["/home/richardlewis/.rvm/gems/[email protected]/bundler/gems/blogModels-8360dfc861ad/lib/models/portfolio_sector.rb", "/home/richardlewis/.rvm/gems/[email protected]/bundler/gems/blogModels-8360dfc861ad/lib/models/post.rb", "/home/richardlewis/.rvm/gems/[email protected]/bundler/gems/blogModels-8360dfc861ad/lib/models/image.rb", "/home/richardlewis/.rvm/gems/[email protected]/bundler/gems/blogModels-8360dfc861ad/lib/models/message.rb", "/home/richardlewis/.rvm/gems/[email protected]/bundler/gems/blogModels-8360dfc861ad/lib/models/sector.rb", "/home/richardlewis/.rvm/gems/[email protected]/bundler/gems/blogModels-8360dfc861ad/lib/models/portfolio.rb", "/home/richardlewis/.rvm/gems/[email protected]/bundler/gems/blogModels-8360dfc861ad/lib/models/category.rb"]
не знает, почему массив в конце?
Edit:
Скрипт должен принимать каждый элемент в массиве и автозагрузке файл, содержащийся в моделях/# {имя файла}. Я хотел бы распечатать все пути модели/# {filename} в консоли, чтобы убедиться, что они верны -
Просто вставьте 'puts' в нужное место. См. Мой ответ. –
, потому что он возвращает перечислитель из методов '# each', поэтому вы получаете массив –