Ruby on rails 无法从可安装rails的引擎加载twitter引导rails
我已将am现有rails 3.2应用程序转换为可安装引擎,但资产管道因以下错误而中断: 未找到“twitter/bootstrap/bootstrap.less” (在/Users/developer/Projects/messaging_app/app/assets/stylesheets/messaging_phase1/bootstrap_和_overrides.css.less中) 在bootstrap_和_overrides.css.less中执行以下行时失败 @导入“twitter/bootstrap/bootstrap.less” 我已经验证了twitter引导gem已经安装并加载Ruby on rails 无法从可安装rails的引擎加载twitter引导rails,ruby-on-rails,rails-engines,twitter-bootstrap-rails,Ruby On Rails,Rails Engines,Twitter Bootstrap Rails,我已将am现有rails 3.2应用程序转换为可安装引擎,但资产管道因以下错误而中断: 未找到“twitter/bootstrap/bootstrap.less” (在/Users/developer/Projects/messaging_app/app/assets/stylesheets/messaging_phase1/bootstrap_和_overrides.css.less中) 在bootstrap_和_overrides.css.less中执行以下行时失败 @导入“twitter/
应用程序转换为引擎后,应用程序似乎没有加载gem中的bootstrap.less文件 您需要在
application.css
中使用此选项(请参阅):
但您也可以尝试,只要使用:
*= require_tree .
如果您使用的是Rails 4(显然您没有),那么您不应该在GEM文件的:assets组中包含引导gem(请参阅)。这里回答了这个问题。在将以下行添加到engine.rb后,它工作了
require 'less-rails'
require 'less/rails/bootstrap'
myengine.gempec具有以下行:
s.add_dependency 'less-rails-bootstrap'
s.add_development_dependency "therubyracer"
我的应用程序和引擎规格:
- 第4.2条
- 红宝石2
- 少轨和少轨2.6.0
gem'therubyracer'
和gem'less rails'
?如果没有,你应该。您还应该删除任何冲突的gem,如gem'bootstrap sass'
,请发布您的应用程序.css的=require
-和@import
-行,以及您的引导和覆盖.css.less的@import
-行。对我的建议有什么反馈吗?我们有一个特定的场景,其中一个rails应用程序作为引擎安装到另一个应用程序中。此引擎使用了Twitter引导。出现这种情况是因为引擎没有加载twitter引导。我们通过手动更改gem的加载路径修复了这个问题。非常感谢您的建议。:)
s.add_dependency 'less-rails-bootstrap'
s.add_development_dependency "therubyracer"