RubyonRailsで画像を投稿できるようにするための事前準備まとめ。
画面上にFormを表示させたりする部分は一旦除外。別途書くかも。
brew install imagemagick でImageMagickをインストールする
※Homebrewのインストール方法はターミナルから下記を実行する。
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
※ImageMagickとはコマンドで画像生成、サイズ変更、拡張子の変更などが可能になるソフトウェア。
GemではないのでGemfileに追記してbundle installを行うのではなく、Homebrewでインストールする。
Gemfileの一番下に下記2行を追記してbundle installを実行する。
gem 'mini_magick'
gem 'image_processing', '~> 1.2'
※MiniMagickとはImageMagickの機能をRubyonRailsで使えるようにするGem。ただしサイズ変更はできない。
※ImageProcessingとは画像のサイズ変更をRubyonRailで可能にするGemのこと。
ターミナルで rails active_storage:install → rails db:migrate の順に実行し
ActiveStorageを使えるようにする。
※ActiveStorageとはRailsでファイルアップロードの実装を簡単にするGem。画像のアップロードを簡単にする
メソッドや画像を保存するテーブルを簡単に作成できる。
画像を保存したいモデルに has_one_attached :image を記載する。
例)ツイッターのようなアプリでtweetモデルがある場合、app/model/tweet.rbに記載する。
画像を保存したいコントローラのストロングパラメータのpermitに:imageを追加する。
例)ツイッターのようなアプリでtweetコントローラがある場合、tweet_controller.rbに書く。
★いったんここまで2021/3/21