【发布时间】:2011-07-24 17:30:25
【问题描述】:
我需要一个用于在 Rails 应用程序中“上传视频”的插件。
谁能告诉我怎么做?
【问题讨论】:
标签: ruby-on-rails video file-upload ruby-on-rails-plugins
我需要一个用于在 Rails 应用程序中“上传视频”的插件。
谁能告诉我怎么做?
【问题讨论】:
标签: ruby-on-rails video file-upload ruby-on-rails-plugins
你也可以使用carrierwavegem
在您的 Gemfile 中添加:gem 'carrierwave'
运行bundle install
使用载波发生器创建上传视频的上传器。
rails g uploader video
在uploaders目录中创建文件video_uploader.rb
在要附加视频或图像的模型中创建一个迁移,注意迁移名称应该像add_{column}_to_{model}
rails g migration add_video_to_post video:string
迁移数据库
运行rake db:migrate
将上传器添加到模型中
class Post < ActiveRecord::Base
mount_uploader :video, VideoUploader
end
在 PostController 中添加视频参数
class PostController < ApplicationController
.
.
.
def post_params
params.require(:post).permit(:name,:video)
end
end
在views/posts中的_forml.html.erb中添加文件附件字段
<%=f.file_field :video%>
观看/流式传输视频
<% @posts.each do |post|%>
<%= post.name %>
<%= video_tag post.video_url.to_s :controls =>true %>
<%end%>
了解更多信息 载波宝石 https://github.com/carrierwaveuploader/carrierwave 和视频教程 http://railscasts.com/episodes/253-carrierwave-file-uploads
【讨论】:
更具体地说,我创建了一个专门用于视频的 Rails gem: https://rubygems.org/gems/paperclip-ffmpeg
【讨论】:
试试paperclip gem,非常受欢迎
【讨论】: