【发布时间】:2011-08-23 15:09:58
【问题描述】:
我已经让“youtube_it”与 Paperclip 配合使用,使用以下代码处理通过浏览器上传的视频:
videos_controller.rb
def create
@video = Video.new(params[:video])
if @video.save
uploader = YouTubeIt::Upload::VideoUpload.new( :username => AppConfig[:youtube_user],
:password => AppConfig[:youtube_pass],
:dev_key => AppConfig[:youtube_api_key])
uploader.upload open( params[:video][:attachment] ), :title => @video.title,
:description => @video.description,
:category => 'some category',
:keywords => ['some keyword 1', "some keyword 2"]
@video.deliver_video_notification
flash[:notice] = 'Your video is under review for approval.<br/> Please check back in 48 hours.'
redirect_to videos_url
else
@errors = @video.errors
@current_video = params[:v].blank? ? Video.newest : Video.find(params[:v])
render :action => :index
end
end
但是,一旦视频上传完毕,如果不手动登录 YouTube 频道并进行查找,我就不知道 YouTube 为该视频创建了哪个 URL。我没有在日志或显示目的地的 response.body 中看到任何回调。我想以某种 after_save 方法以编程方式保存目的地。由于它现在可以正常工作,它正在保存视频对象,并在保存后将视频上传到 youtube。
【问题讨论】:
标签: ruby-on-rails upload youtube-api