CarrierWaveを試してみる。
参考
1.新規プロジェクト生成
$ rails new carrierwave_sample_app
$ cd carrierwave_sample_app
2.(Gemfile)に追加
gem 'carrierwave'
$ bundle install
3.generate
$ rails g scaffold user name:string password:string
4.データベース生成
$ rails g migration add_avatar_to_users avatar:string
$ rails db:create db:migrate
5.(app/models/user.rb)を変更
class User < ApplicationRecord
mount_uploader :avatar, AvatarUploader
end
6.(app/views/users/_form.html.erb)
<div class="field">
<%= form.label :avatar %><br>
<%= form.file_field :avatar %>
</div>
6.(app/controllers/users_controller.rb)
def user_params
params.require(:user).permit(:avatar, :name, :password)
end
7.(app/views/users/show.html.erb)
<img src="<%= @user.avatar %>" width="100">
8.サーバー立ち上げて確認
$ rails s