0

重複の可能性:
Rails3.1アセットの事前コンパイル

私は最近、Rails3.1とRuby1.9.2を使用して構築しているアプリケーションに苦労しています。

私の問題は、特定のJSファイルをシステムに追加することがあるのですが、それをHerokuにプッシュすると、「yourfile.jsがプリコンパイルされていません」というエラーが表示されます。

config.assets.precompile私は自分のファイルを自分のファイルに追加することでこれを解決しapplication.rbます。しかし、このプロセスを自動化する方法はありますか?私は現在たくさんのjsファイルを持っています、そしてもっとたくさん追加するかもしれません。これに利用できる宝石はありますか?多分私が欠けているいくつかの構成?

4

1 に答える 1

0

これらのファイルを application.js に追加し、すべてのページに含める必要があります。

一部のページで必要ないかどうかは問題ではありません。サーバーが正しく設定されている場合、application.js ファイルはブラウザーによってキャッシュされ、ユーザーがサイトを閲覧しても再度ダウンロードされることはありません。2 つ目の利点は、透過的なプロキシによって js ファイルをどこかにキャッシュできるため、帯域幅のコストが削減され、プロキシの反対側にいる人々の応答時間が短縮されることです。

必要に応じてのみファイルを含めたい場合は、それらをプリコンパイル配列に含める必要があります。これは、プリコンパイル タスクがプロダクション マニフェストでファイルを使用できるようにする唯一の方法です。

実際には、多くのページに共通する js を application.js に含めることができます。1 つのページに大量の js がある場合は、その 1 つのページにのみ配置します。

于 2012-04-25T20:29:42.460 に答える