ここでAssets Pipelineガイドを読んで試しました: http://guides.rubyonrails.org/asset_pipeline.html
...手動で作成および更新されたリストに特定のファイルを含める方法を示します。または、ディレクトリ (または複数のディレクトリ) を含めるが、Rails に通常含まれる他のすべてのファイルを除外する Proc です。
ファイルのフォルダーを通常含まれているファイルに += したい。
私は答えを試しました:
app/assets 内のすべての CSS および JS ファイルを処理する Rails の config.assets.precompile 設定
config.assets.precompile の目的は何ですか?
特定のサブフォルダーの rails config.assets.precompile
...最後は解決策を示しているようです:
config.assets.precompile += ["*external/calendars*"]
私が変更したもの:
config.assets.precompile += %w["*javascript*"]
または config.assets.precompile += [" javascript "] (および約 20 の他のバリエーション。)
... 私の assets/javascript フォルダーを取得します。しかし、「...isn't precompiled」というエラーが示すように、ディレクトリは含まれていません。
3番目の方法は、それを与えることです
config.assets.precompile += %w( *.js )
...これは機能しますが、非常に長いコンパイルにつながります.どこでも、発見できるすべてのJSファイルを見つけると思います.
言うまでもなく、手動で更新されたリストにファイルを追加することは、進行中のアプリケーションには適していません。また、Rails が排他的な Proc でプリコンパイルした未知のものを失うこともありません (ただし、ドキュメント内の例は 2 つだけです)。 .
フォルダを "+-=" にする単純なワイルドカード ソリューションはありませんか? または、この「機能」をオフにして、ビューごとに JS を指定しても、Heroku で動作させることができますか?
----編集 - 深く見れば見るほど、不合理になります。基本的に、解決策は「Rails が開発モードで A-OK を見つけたものをすべてロードする」ことです。それでも、そのようなオプションは存在しませんか?
プリコンパイル行を参照する production.rb ファイルには、次のように記載されています。
# Precompile additional assets (application.js, application.css, and all non-JS/CSS are already added)
...そしてapplication.jsには次のものがあります:
//= require_tree .
...そのディレクトリの下のすべてのファイルをロードする必要がありますが、そうではありません。なんで?深く掘り下げるほど、これは意味がなくなります。