我正在将Rails应用程序从3.1升级到3.2 它使用宝石'twitter-bootstrap-rails'和宝石'少'。
尝试启动瘦服务器时出错。
现在我收到了这个错误。它说“没有这样的文件”,即使我在我的应用程序中有该文件:
LoadError in Home#index
Showing /Users/burtondav/sites/requestsys/app/views/layouts/application.html.erb where line #20 raised:
no such file to load -- less
(in /Users/burtondav/sites/requestsys/app/assets/stylesheets/bootstrap_and_overrides.css.less)
Extracted source (around line #20):
17: }
18: </style>
19:
20: <%= stylesheet_link_tag "application", :media => "all" %>
21:
22: <!-- Le fav and touch icons -->
23: <link href="/favicon.ico" rel="shortcut icon">
较少的宝石有什么问题吗?
谢谢!
更新
我重新安装了gem'twitter-bootstrap-rails'。现在我收到了这个错误:
Cannot call method 'charAt' of undefined
(in /Users/burtondav/sites/requestsys/app/assets/stylesheets/bootstrap_and_overrides.css.less)
我找到了关于less.js的回答 - &gt;
https://github.com/cloudhead/less.js/issues/906
但是,我正在使用gem'less-rails'
这可能是在less.js而不是less-rails gem中修复的已知问题吗?
更新2
我发现了这个
“在sprite.less中我更改了background-image:url(”@ {iconSpritePath}“);和background-image:url(”@ {iconWhiteSpritePath}“);
添加“”和{}摆脱了错误..“
但是,那不是铁轨。
我的路径是:
// Set the correct sprite paths
@iconSpritePath: asset-path("twitter/bootstrap/glyphicons-halflings.png");
@iconWhiteSpritePath: asset-path("twitter/bootstrap/glyphicons-halflings-white.png");
更新3
我找到了另一个答案 - 升级到Ruby 1.9.3。我正在使用ruby 1.9.2p290
但是,我很紧张。我应该紧张吗?我的应用程序仍可在Heroku上运行吗?
我打算开一个新问题 - 这个问题的标题现在不正确。
答案 0 :(得分:0)
我依稀记得有这样的问题。也许尝试less-rails而不是less。我有以下内容:
gem 'twitter-bootstrap-rails'
gem 'less-rails'
还要确保你有(或其他一些javascript解释器)。
gem 'therubyracer', '0.10.2', :platforms => :ruby
在Gemfile中取消注释。这几乎看起来你无法编译你的资产