2013-02-01 172 views
0

我正在將Rails應用從3.1升級到3.2 它使用gem'less'的gem'twitter-bootstrap-rails'。從Rails 3.1升級到3.2錯誤

我試圖啓動瘦服務器時出錯。

現在我收到此錯誤。它說「沒有這樣的文件」,即使我在我的應用程序中有該文件:

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"> 

有沒有什麼錯的更少的寶石?

謝謝!

UPDATE

我重新安裝了寶石 'Twitter的引導護欄'。現在,我得到這個錯誤:

Cannot call method 'charAt' of undefined 
(in  /Users/burtondav/sites/requestsys/app/assets/stylesheets/bootstrap_and_overrides.css.less) 

,我發現這個答案約less.js - >

https://github.com/cloudhead/less.js/issues/906

但是,我使用的寶石 '少護欄'

難道這是一個知道的問題,在less.js中修復,而不是少軌道寶石?

UPDATE 2

我發現這個

「在sprite.less我改變背景圖像:URL(」 @ {iconSpritePath} 「);以及背景圖像: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

我發現了另一個答案 - 升級到1.9.3紅寶石。我正在使用紅寶石1.9.2p290

但是,我很緊張這樣做。我應該緊張嗎?我的應用程序仍會在Heroku上運行嗎?

我打開一個新的問題 - 這個標題現在是不正確的。

回答

0

我依稀記得有這樣的問題。也許試試less-rails而不是少一些。我有以下幾點:

gem 'twitter-bootstrap-rails' 
gem 'less-rails' 

還要確保你有(或其他JavaScript解釋器)。

gem 'therubyracer', '0.10.2', :platforms => :ruby 

取消註釋在您的Gemfile中。它幾乎看起來像你不能編譯你的資產

+0

我得到這個:/Users/burtondav/.rvm/gems/ruby-1.9.2-p290/gems/less-rails-1.0.0/LIB /較少的導軌。rb:11:在中:未初始化的常量Less :: Plugin :: RAILS_ROOT(NameError) – Reddirt

+0

如果您在資產組中定義了這些寶石,可以嘗試將它們移出。你可以通過完整的堆棧跟蹤嗎? – rainkinz

+0

對不起 - 但是,如何獲得「堆棧跟蹤」? – Reddirt