ynk*_*nkr 10 ruby-on-rails bundler
我正在运行一个使用名为'awesome_engine'的引擎的rails 3.1 app.Awesome_engine有一些我需要的资产,但罗盘的负载路径不包括引擎资产路径.我的理解是它应该在那里,但事实并非如此.
我需要添加它,所以我修改了我的config/compass.rb以包含指南针的additional_import_paths配置设置.问题是,这就是我获取所需gem的路径:
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
Run Code Online (Sandbox Code Playgroud)
这有效,但必须有一个更容易/更好/更清洁的方式来获得宝石的完整路径.任何人?
ynk*_*nkr 26
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/ruby-1.9.2-p290@foobar/gems/rails-3.1.3"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2954 次 |
| 最近记录: |