Мне нужен полный путь драгоценных камней изнутри приложения rails

Я запускаю приложение rails 3.1, которое использует движок под названием "awesome_engine". У Awesome_engine есть некоторые активы, которые мне нужно получить, но пути загрузки компаса не включают путь ресурсов движков. Я понимаю, что он должен быть там, но это не так.

Мне нужно добавить его, чтобы изменить конфигурацию config/compass.rb, чтобы включить настройку конфигурации компаса Additional_import_paths. Проблема в том, что я получаю путь к требуемому камню:

begin
  gem_root = $LOAD_PATH.find{|i| i.include?('/awesome_engine/')}.gsub(/awesome_engine\/.*/, 'awesome_engine/app/assets/stylesheets/scss')
  additional_import_paths = [gem_root]
rescue
end

Это работает, но должен быть более простой/лучший/более чистый способ получить полный путь жемчужины. Кто-нибудь?

Ответ 1

Gem.loaded_specs - это то, что я хотел:

ruby-1.9.2-p290 :001 > Gem.loaded_specs['awesome_engine'].full_gem_path
 => "/Users/younker/dev/engines/awesome_engine" 

ruby-1.9.2-p290 :002 > Gem.loaded_specs['rails'].full_gem_path
 => "/Users/younker/.rvm/gems/[email protected]/gems/rails-3.1.3"