ユーザー登録時の画像や投稿機能の画像のアップロードにcarrierwaveを導入する手順のメモ
gemを追加
まずはいつものようにgemを追加してインストールする
Gemfile
gem 'carrierwave'
画像を保存するためのカラムを追加する
ここは適時、必要なテーブルに追加していく
$ rails g migrate add_column_to _users :image string
strong parameterで:imageを許可する
users_controller
def user_params
params.requier(:user).permit(:name, :email, :password, :image)
end
アップローダーの作成
$ rails g uploader image
各モデルでアップローダーのマウント
user.rb
mount_uploader :image, ImageUploader
フォームに下記を追加
edit.html.erb
<%=f.label :image,"ユーザー画像" %>
<%= f.file_field :image %>
表示させる
view.html.erb
<%= image_tag @user.image %>