掲示板の画像アップロード機能
Gemfileに追加
gem 'carrierwave'
gem 'mini_magick'
bundle installする
アップローダの作成
rails g uploader Board_Image
board_image_uploader.rbを作成
board_image_uploader.rb
def default_url デフォルトの画像を指定
'.png'
end
def extension_whitelist アップロードできる拡張子を制限
end
カラムの追加
マイグレーションファイル
add_column :boards, :board_image, :string
rails db:migrateを実行
Boardモデルにアップローダーの宣言
mount_uploader :board_iamge, BoardImageUploader
画像の入力フォームを追加
<div class="form-group">
<%= f.label :board_iamge%>
<%= f.file_field :board_image, class:'form-control mb-3', accept: 'image/*' %>
<%= f.hidden_field :board_image_cache %>
</div>
画像の表示
<%= image_tag board.board_image_url, class: 'card-img-top', size: '300x200' %>