html5 audio タグを利用したサイトを構築しています。私の見解では、 <% audio_tag "test.mp3", :controls => true %> を追加しましたが、これは開発でうまく機能します。ただし、アプリを Heroku にデプロイしてアクセスしようとすると、ログに「ActionView::Template::Error (test.mp3 isnt precompiled)」というエラーが表示されます。
これを修正するにはどうすればよいですか?
html5 audio タグを利用したサイトを構築しています。私の見解では、 <% audio_tag "test.mp3", :controls => true %> を追加しましたが、これは開発でうまく機能します。ただし、アプリを Heroku にデプロイしてアクセスしようとすると、ログに「ActionView::Template::Error (test.mp3 isnt precompiled)」というエラーが表示されます。
これを修正するにはどうすればよいですか?
次のように指定してみてください:
config.assets.compile = true
あなたのproduction.rb
ファイルに。
heroku
もう 1 つの解決策は、リポジトリにプッシュする前にアセットをプリコンパイルすることです。
rake assets:precompile
git commit add .
git commit -a -m "Assets are precompiled"
git push heroku master
今はテストできませんが、うまくいくはずです。
本番環境では、assets ディレクトリに保存されているすべてのファイルがプリコンパイルされています。audio_tag アセット パイプラインのような Rails タグ ヘルパーを使用している場合、アセットがいずれかのアセット ディレクトリにあると想定されます。それをロールアップするには、生のhtmlタグを使用できます:
<audio src="/audios/test.mp3" />
またはそのファイルを app/assets ディレクトリに配置します。詳細はこちら