テックキャンプ46日目

kobasaです(´ω`*)今日は画像投稿の勉強をしていました。
Gemで簡単に実装できるんですねぇ。ようやくチャットアプリの終わりが見えてきました。

46日目の勉強内容

画像の保存や編集に必要なGemやツール

  • ImageMagick:画像の加工ができるようになるソフトウェア。Gemではない。
  • MiniMagick:ImageMagickをrailsで使用できるようにするGem。ただし画像サイズの変更はできない。
  • ImageProcessing画像サイズの変更をするGem。MiniMagickの補足に使う。

Active Storage:画像ファイルのアップロードや、画像を保存するDBを簡単に作成できるGem。
gemファイルに記載不要。コマンドを実行してインストールするとmigrateファイルも作成してくれる。

rails active_storage:install

画像の表示とアソシエーション

has_one_attachedメソッド:
アソシエーションに使用し、1つのレコードに1つのファイルを添付できるようになる。(1対1の関係で紐付く)
messageモデルにhas_one_attached :imageと記述することで、message.imageで添付ファイルにアクセスできるようになる。

image_tagメソッド:画像の表示を簡単に記述するヘルパーメソッド。

attached?メソッド:ファイルが添付されていればtrueを返す。

variantメソッド:画像サイズを指定することができる。

コメント

タイトルとURLをコピーしました