我正在构建一个使用 html5 音频标签的网站。在我看来,我添加了 <% audio_tag "test.mp3", :controls => true %> 这在开发中效果很好。但是,当我将我的应用程序部署到 Heroku 并尝试访问它时,我在日志“ActionView::Template::Error (test.mp3 isnt precompiled)”中收到此错误
我该如何解决?
我正在构建一个使用 html5 音频标签的网站。在我看来,我添加了 <% audio_tag "test.mp3", :controls => true %> 这在开发中效果很好。但是,当我将我的应用程序部署到 Heroku 并尝试访问它时,我在日志“ActionView::Template::Error (test.mp3 isnt precompiled)”中收到此错误
我该如何解决?
请尝试指定:
config.assets.compile = true
在你的production.rb
文件中。
另一种解决方案是在推送到heroku
repo 之前预编译您的资产:
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 目录中。更多信息可在此处获得