1

本番環境にデプロイすると、マニフェストファイルのいくつかがプリコンパイルされていないことがわかりました。そして、これらのマニフェストファイルはすべて.sassや.js.coffeeのような拡張子を持っていることに気づきました

私はこれらをapplication.rb同様に含めましたconfig.assets.precompile << 'admin.js.coffee'

それで、マニフェストファイルがプレーンなcss / js以外のものになることはできないというのは本当ですか?

アップデート

私はfish.sassを持っていますが、実行しても何も起こりconfig.assets.precompile << 'fish.sass'ません。ただし、これを行うconfig.assets.precompile << 'fish.css'と正しくコンパイルされます。それを機能させるために存在しないファイルを指定しなければならないのは奇妙に思えます。

4

2 に答える 2

1

マニフェストファイルには、sass、coffeeなどの他のファイルを含めることができます。アプリをデプロイするときは、を実行する必要がありますrake assets:precompile。これにより、すべてのアセットファイルがプリコンパイルされます。

他のファイルがある場合は、production.rb内にこれを追加する必要があります

config.assets.precompile += %w( admin.js, admin.css )

これもproduction.rbにあることを確認してください

config.assets.compile = true

マニフェストファイルに拡張子.js.cssを付けて名前を付けてから、中に同じ名前を追加する必要がありますproduction.rb

于 2012-05-31T07:44:49.150 に答える
1

ファイルfish.cssは「存在します」。アセットをコンパイルする前に、railsはファイル名を調べ、拡張子に従ってファイルを解析します。したがって、sassファイルはcssでレンダリングされ、coffeeはjsでレンダリングされます。

于 2012-05-31T08:27:46.723 に答える