0

Rails アプリを 3.1 から 3.2 にアップグレードしています。gem 'less' で gem '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についてこの答えを見つけました->

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

しかし、私は宝石の「less-rails」を使用しています

これは、less-rails gem ではなく、less.js で修正されている既知の問題でしょうか?

更新 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 にアップグレードしてください。ルビー1.9.2p290を使用しています

でも、そうすると緊張します。私は緊張する必要がありますか?私のアプリは引き続き Heroku で実行できますか?

新しい質問を開きます - この質問のタイトルは現在正しくありません。

4

1 に答える 1

0

このような問題があったことをぼんやりと覚えています。less の代わりに less-rails を試してみてください。私は次のものを持っています:

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

また、(または他の JavaScript インタープリター) があることを確認してください。

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

Gemfile でコメントを外します。アセットをコンパイルできないようです

于 2013-02-01T20:44:23.570 に答える