При создании драгоценных камней у меня часто есть структура каталогов, подобная этой:
|--lib
|-- helpers.rb
`-- helpers
|-- helper_a.rb
`-- helper_b.rb
Внутри helpers.rb
, я просто require
-ing файлы в каталоге helpers
. Но я должен сделать что-то вроде этого:
$:.push(File.dirname(__FILE__) + '/helpers')
require 'helper_a'
require 'helper_b'
Есть ли способ сделать эту строку, чтобы мне никогда не пришлось добавлять к ней? Я просто придумал это очень быстро:
dir = File.join(File.dirname(__FILE__), "helpers")
Dir.entries(dir)[2..-1].each { |file| require "#{dir}/#{file[0..-4]}" }
Но это две линии и безобразно. Какие хитрые уловки вы сделали, чтобы сделать это одним вкладышем?