2012-05-24 4 views
13

なぜグループの外にgem 'jquery-railsが表示されるのはなぜですか?多くの場合、「jQuery-Rails」はアセットグループ外にある

group :assets do 
    gem 'sass-rails', " ~> 3.1.0" 
    gem 'coffee-rails', " ~> 3.1.0" 
    gem 'uglifier' 
end 

gem 'jquery-rails' 

私はそれを入れればバグのような行動がありますか?

ありがとうございます!

+0

HIya、これを理解するには、ここをクリックしてください:http://guides.rubyonrails.org/asset_pipeline.html;なぜ資産グループが存在するのか。希望がこれを助ける –

答えて

13

jquery-rails宝石には、いくつかのテストヘルパーも用意されています。だから、おそらく人々は:assetsグループの外にそれを置くことを好むでしょう。

しかし、:assetsグループは開発環境とテスト環境に含まれていますので、好きなだけjquery-rails:assetsグループに配置するのは完全に安全です。

アプリケーションをデプロイする前に、資産をプリコンパイルしてください。

+2

- 1。 ':assets'グループで' jquery-rails'を使ったことがあるならば、 ':assets'グループに入れるのは完全に安全ではないことがわかります。時々、jquery-railsが故障する可能性があり、あらかじめコンパイルすることは役に立ちません。それを ':assets'の外側に置くことは仕事をするでしょう。 – Aleks

+0

@Aleksあなたが適切な環境で資産をプリコンパイルする限り、あなたはうまくいくはずです。前述のようにプロダクション環境でのプリコンパイルは機能しません。 – thomasfedb

+0

@Aleks私は資産グループが開発とテストに含まれていると言いますが、私はそれが生産に含まれているとは言いません。私は**展開の前に資産**をプリコンパイルするとも言いました。 – thomasfedb

4

実際の答えは、gem 'jquery-rails'が生産上で壊れることがあり、それ以外の方法を修正して最初から宝石自体を初期化する標準的な方法はないということです。私は英雄のこの問題を見ました。

jquery-rails:assetsグループの外に置くと、それが解消されないことがわかります。

でも質問が古いものですが、私はそれが理由であることを確認したかった、とあなたはおそらくOUTSIDE 'jquery-rails':assetsグループを配置する必要があります。

関連する問題