开发者

Problem with videos on heroku

I have recently moved my RoR app on the Heroku platform, and almost everything works fine apart from the videos. It works fine when my app runs in local but not on heroku. This is the error log I'm getting, if anyone knows where it can be coming from:

Processing VideosController#new (for IP at 2010-03-20 04:32:09) [GET] 
  Session ID: 6abecf60c3369d7c7029e366bb801e08 
  Parameters: {"artist_id"=>"10", "action"=>"new", 
"controller"=>"admin/videos"} 
Rendering  within layouts/admin 
Rendering admin/videos/new 
ActionView::TemplateError (undefined method `video_file_relative_path' 
for #<Video:0x2adc9839fe28>) on line #21 of app/views/admin/videos/ 
_form.rhtml: 
18: 
19: <p><label for="videos_image_file">Fichier Vidéo SWF</label><br/> 
20: <% if @video.video_file %> 
21:             <%=  link_to image_tag(url_for_file_column("video", 
"video_file", :name => "thumbnail"))+"<br>", {:controller => 
url_for_file_column("video", "video_file")}, :popup => ['new_window', 
'height=200,width=200'] %> 
22: <% end %> 
23: <%= file_column_field 'video', 'video_file'  %> 
24: &nbsp;&nbsp;&nbsp; 
    #{RAILS_ROOT}/vendor/rails/activerecord/lib/active_record/base.rb: 
1792:in `method_missing' 
    #{RAILS_ROOT}/vendor/plugins/file_column/lib/file_column_helper.rb: 
75:in `send' 
    #{RAILS_ROOT}/vendor/plugins/file_column/lib/file_column_helper.rb: 
75:in `url_for_file_column' 
    #{RAILS_ROOT}/app/views/admin/videos/_form.rhtml:21:in 
`_run_rhtml_admin_videos__form' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_view/base.rb: 
314:in `send' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_view/base.rb: 
314:in `compile_and_render_template' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_view/base.rb: 
290:in `render_template' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_view/base.rb: 
249:in `render_file' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_view/base.rb: 
264:in `render' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_view/partials.rb: 
59:in `render_partial' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_controller/ 
benchmarking.rb:33:in `benchmark' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_view/partials.rb: 
58:in `render_partial' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_view/base.rb: 
276:in `render' 
    #{RAILS_ROOT}/app/views/admin/videos/new.rhtml:4:in 
`_run_rhtml_admin_videos_new' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_view/base.rb: 
314:in `send' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_view/base.rb: 
314:in `compile_and_render_template' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_view/base.rb: 
290:in `render_template' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_view/base.rb: 
249:in `render_file' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_controller/ 
base.rb:699:in `render_file' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_controller/ 
base.rb:621:in `render_with_no_layout' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_controller/ 
layout.rb:243:in `render_without_benchmark' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_controller/ 
benchmarking.rb:53:in `render' 
    /usr/local/lib/ruby/1.8/benchmark.rb:293:in `measure' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_controller/ 
benchmarking.rb:53:in `render' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_controller/ 
base.rb:911:in `perform_action_without_filters' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_controller/ 
filters.rb:368:in `perform_action_without_benchmark' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_controller/ 
benchmarking.rb:69:in `perform_action_without_rescue' 
    /usr/local/lib/ruby/1.8/benchmark.rb:293:in `measure' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_controller/ 
benchmarking.rb:69:in `perform_action_without_rescue' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_开发者_如何学运维controller/ 
rescue.rb:82:in `perform_action' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_controller/ 
base.rb:381:in `send' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_controller/ 
base.rb:381:in `process_without_filters' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_controller/ 
filters.rb:377:in `process_without_session_management_support' 
    #{RAILS_ROOT}/vendor/rails/actionpack/lib/action_controller/ 
session_management.rb:117:in `process' 
    #{RAILS_ROOT}/vendor/rails/railties/lib/dispatcher.rb:38:in 
`dispatch' 
    /usr/local/lib/ruby/gems/1.8/gems/thin-1.0.1/lib/rack/adapter/ 
rails.rb:60:in `serve_rails' 
    /usr/local/lib/ruby/gems/1.8/gems/thin-1.0.1/lib/rack/adapter/ 
rails.rb:80:in `call' 
    /home/heroku_rack/lib/static_assets.rb:9:in `call' 
    /home/heroku_rack/lib/last_access.rb:25:in `call' 
    /usr/local/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/urlmap.rb: 
46:in `call' 
    /usr/local/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/urlmap.rb: 
40:in `each' 
    /usr/local/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/urlmap.rb: 
40:in `call' 
    /home/heroku_rack/lib/date_header.rb:14:in `call' 
    /usr/local/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb: 
60:in `call' 
    /usr/local/lib/ruby/gems/1.8/gems/thin-1.0.1/lib/thin/ 
connection.rb:80:in `pre_process' 
    /usr/local/lib/ruby/gems/1.8/gems/thin-1.0.1/lib/thin/ 
connection.rb:78:in `catch' 
    /usr/local/lib/ruby/gems/1.8/gems/thin-1.0.1/lib/thin/ 
connection.rb:78:in `pre_process' 
    /usr/local/lib/ruby/gems/1.8/gems/thin-1.0.1/lib/thin/ 
connection.rb:57:in `process' 
    /usr/local/lib/ruby/gems/1.8/gems/thin-1.0.1/lib/thin/ 
connection.rb:42:in `receive_data' 
    /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.6/lib/ 
eventmachine.rb:240:in `run_machine' 
    /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.6/lib/ 
eventmachine.rb:240:in `run' 
    /usr/local/lib/ruby/gems/1.8/gems/thin-1.0.1/lib/thin/backends/ 
base.rb:57:in `start' 
    /usr/local/lib/ruby/gems/1.8/gems/thin-1.0.1/lib/thin/server.rb: 
150:in `start' 
    /usr/local/lib/ruby/gems/1.8/gems/thin-1.0.1/lib/thin/controllers/ 
controller.rb:80:in `start' 
    /usr/local/lib/ruby/gems/1.8/gems/thin-1.0.1/lib/thin/runner.rb: 
173:in `send' 
    /usr/local/lib/ruby/gems/1.8/gems/thin-1.0.1/lib/thin/runner.rb: 
173:in `run_command' 
    /usr/local/lib/ruby/gems/1.8/gems/thin-1.0.1/lib/thin/runner.rb: 
139:in `run!' 
    /usr/local/lib/ruby/gems/1.8/gems/thin-1.0.1/bin/thin:6 
    /usr/local/bin/thin:20:in `load' 
    /usr/local/bin/thin:20 

Thanks


It looks like you must be trying to do something that writes something that has to do with the videos on the Heroku filesystem. This won't work because it's readonly.

You'll need to store your videos and anything else that currently gets created on the filesystem elsewhere (Amazon S3 works great).

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜