RubyGems: включить ресурсы из одного драгоценного камня в другой (мой драгоценный камень)

Я работаю над объединением своего собственного драгоценного камня, который опирается на активы другого драгоценного камня. Чтобы упростить ситуацию, вот с чем я работаю:

Демонстрационное приложение

Новый драгоценный камень

Font Awesome Gem (https://github.com/bokmann/font-awesome-rails )

Я включаю гем Font Awesome внутрь New Gem, например:

# new_gem.gemspec
Gem::Specification.new do |gem|
  ...
  gem.add_dependency "font-awesome-rails"
  ...
end

# app/assets/stylesheets/new_gem.css.scss
@import "font-awesome";

Затем я создаю, устанавливаю и добавляю New Gem в свое демонстрационное приложение. В приложении css я ссылаюсь на таблицы стилей New Gem следующим образом:

# app/assets/stylesheets/application.css
@import "new_gem";

Проблема в том, что когда я запускаю приложение, во время выполнения я получаю следующую ошибку:

File to import not found or unreadable: font-awesome.

В результате я хотел бы знать, могу ли я использовать ресурсы Font Awesome в моем новом драгоценном камне? Я понимаю, что если бы я скопировал активы (шрифты, css) прямо в файл css New Gem, все было бы хорошо. Однако я хотел бы избежать этого, потому что я не хочу обновлять свой драгоценный камень каждый раз, когда обновляется Font Awesome.

Заранее спасибо!


person user527662    schedule 18.08.2013    source источник
comment
Хм... должен быть способ. Думая о том, как устанавливается такой большой проект, как Rails, он автоматически загружает около 50+ других пакетов вместе с ним, чтобы правильно функционировать при первой установке драгоценного камня.   -  person depwl9992    schedule 18.08.2013
comment
Взгляните на это. Может поможет прояснить.   -  person depwl9992    schedule 18.08.2013
comment
Я думаю, что изучение кода Rails может быть хорошей идеей. Что касается прикрепления ссылки на другое обсуждение, как вы думаете, что я могу использовать сам?   -  person user527662    schedule 19.08.2013
comment
Я подумал, что флаг --source сможет помочь вам в этом обсуждении. Я имею в виду, что «Файл для импорта не найден» будет означать, что вы не указали, откуда гем должен извлекать зависимость, поэтому я предполагаю, что это был бы способ определить его.   -  person depwl9992    schedule 19.08.2013


Ответы (1)


в моем случае это было просто включение 'font-awesome-rails' в заголовок my_engine.rb

require 'my_engine/version' 
require 'font-awesome-rails' #<= here it comes

...

module My_Engine
   module Rails
      class Engine < ::Rails::Engine
...
person okliv    schedule 15.04.2014