I need a plugin for "Upload Videos" in a rails application.
Can anyone give me an idea on how to do it?
Try paperclip gem, very popular for this purpose
You can also use carrierwave gem
Add in your Gemfile:
gem 'carrierwave'Run
bundle installCreate an uploader for uploading video using carrierwave generator.
rails g uploader videoIt creates file
video_uploader.rbinuploadersdirectoryCreate a migration in model where you want attach the video or image, be careful with the migration name it should be like
add_{column}_to_{model}rails g migration add_video_to_post video:stringMigrate database
Run
rake db:migrateAdd uploader to the model
class Post < ActiveRecord::Base mount_uploader :video, VideoUploader endAdd video parameter in PostController
class PostController < ApplicationController . . . def post_params params.require(:post).permit(:name,:video) end endAdd file attachment field in
_forml.html.erbwhich is inviews/posts<%=f.file_field :video%>To view/stream the video
<% @posts.each do |post|%> <%= post.name %> <%= video_tag post.video_url.to_s :controls =>true %> <%end%>
for more information carrierwave gem https://github.com/carrierwaveuploader/carrierwave and video tutorial http://railscasts.com/episodes/253-carrierwave-file-uploads
Even more specific, I created a Rails gem that works specifically with videos: https://rubygems.org/gems/paperclip-ffmpeg
来源:https://stackoverflow.com/questions/5463572/upload-video-in-a-rails-application