1

.jsフォルダにと.coffeeファイルの両方があり/app/assets/javascripts/ます。.coffeeを呼び出さないとファイルは実行されません。変更を加えるたびにファイルを再度プリコンパイルするrake assets:precompile必要があるため、これは面倒です。rake assets:clean

また、ソースファイルに加えてプリコンパイルされた.jsファイルが含まれているため、ダブルイベントハンドラーなどの優れた機能が提供されます。

私の理解では、コーヒースクリプトは、プリコンパイルされていない場合、リクエストごとにjavascriptにコンパイルする必要がありますが、そうではないようです。コンパイルされたスクリプトがFirebugにロードされているのが見つかりません。また、少なくともその動作はわかりません。

/config/application.rbは次の行を構成しています:

# Enable the asset pipeline
config.assets.enabled = true

他に何をチェックする必要がありますか?

Rails3.2.3を使用しています。

4

1 に答える 1

3

ローカルマシンでプリコンパイルする場合は、これらの生成されたアセットをリポジトリにコミットして、展開を続行できます。それらを本番マシンでコンパイルする必要はありません。

ただし、問題が発生します。ソースファイル(coffescript / scss)を変更すると、代わりにプリコンパイルされたファイルが提供されるため、アプリは変更を取得しません。rake Assets:cleanは、これらのプリコンパイル済みファイルを削除します。

https://stackoverflow.com/a/9335864/643500から

アセットを本番サーバーでプリコンパイルして新しい変更を取得する場合に通常行うことは、ビルドごとにアセットをクリーンアップすることです。もちろん、アセットを再プリコンパイルしない限り、一度だけです。

rake assets:clean

変更が加えられ、ビルドごとにプリコンパイルしたくない場合は、

rake assets:clean
rake assets:precompile
于 2012-07-11T04:26:32.153 に答える