13
16

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

railsで動画を投稿する

Posted at

今回、初投稿させていただきます。
少し、見にくかったりしてもご了承お願いします。

今回は、railsで動画アップロード機能の備忘録となっております。
個人的にFFmpegを使用した動画アップロードが分かりにくかったので、なるべく分かりやすく説明できればと思います。

#環境
Ruby 2.6.5
Rails 6.0.3.2

#早速取り掛かっていく

ターミナル
rails new RailsApp

ターミナルでRailsAppを作ります。

Gemfile
gem 'carrierwave'
gem 'mini_magick'

Gemfileに追記

ターミナル
rails bundle install

ターミナルでbundle installします。

ターミナル
rails g uploader video
rails g scaffold post video:string

ターミナルでuploaderとscaffoldを作成

ターミナル
rails db:migrate

忘れずにマイグレーション

app/models/post.rb
mount_uploader :video, VideoUploader

post.rbに追記

app/uploaders/video_uploader.rb
def extension_whitelist
   %w(jpg jpeg gif png MOV wmv mp4)
end 

38行目からコメントを外して、追記

views/posts/_form.html.erb
<div class="field">
    <%= form.label :video %>
    <%= form.file_field :video, :accept => 'video/*' %>
</div>

text.fieldになっていると思うので、file.fieldに書き換える。

app/views/posts/show.html.erb
<p>
  <%= link_to @post.video_url.to_s do %>
   <%= video_tag(@post.video.to_s) %>
  <% end %>
</p>

<%= @post.video %>になっていると思うので書き換えます。
<%= link_to @post.video_url.to_s do %>を書かないと動画をクリックしても再生されません。

#ありがとうございました
動画アップロードに悪戦苦闘したので、皆さんが簡単にできたら幸いです。

13
16
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
16

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?