2012-09-30 43 views
1

新手入门这里: 我有一个Rails应用程序,我想使用html5视频标签在一两页上放置视频。我目前使用Rails 3.2和Heroku的雪松堆栈来部署我的应用程序。将应用程序部署到Heroku时遇到问题。Rails 3.2/Heroku问题 - 公共/视频预编译.mp4视频

我已经放在公共/视频我的MP4视频和运行轨道的本地服务器时,一切都运行得很好。

但是,当我部署到heroku时,包含这些视频的页面无法加载,即“我们很抱歉,但出了问题”。 检查日志

heroku logs 

显示此错误

ActionView::Template::Error (car_circle.mp4 isn't precompiled) 

这是不是太奇怪,因为它似乎公用文件夹不包括在轨3.2资产管道,所以一切都在那里没有得到预编译。

如果我在这里的推理是正确的,我想知道如何获取我的资产管道中包含的公共/视频,以便可以预编译这些视频。或者,如果我不应该公开这些视频,那么关于如何正确将它们移动到资产管道中的一些指导也会很好。

希望我为您提供了足够的信息来帮助我。谢谢。

回答

1

加入

config.assets.paths << "#{Rails.root}/public/videos" 

的config/application.rb中允许文件夹/公共/视频被添加到资产的管道。这允许加载视频的页面加载,但是页面仍然无法正确加载视频。

这附加到资产管道的路径。在资产管道的路径可以通过打开导轨控制台来查看,并键入:

Rails.application.config.assets.paths 

你可能会遇到像这样的列表:

=> ["/Users/someuser/Documents/Rails/some_app/app/assets/images", 
"/Users/someuser/Documents/some_app/app/assets/javascripts",..., 
/Users/someuser/Documents/some_app/public/videos"]