fluid_27’s blog

勉強した内容をアウトプットするためのブログ

rails tutorial第13章 自分用メモ

rails tutorialで躓いた自分のために、より理解が進むようザックリと内容を整理してメモとしてまとめていきます。

 

完全に自分用のメモです。

2020.12.28 ver.

 

Rails tutorial 第13章で学習する内容

  • Micropostモデルの作成
  • MicropostモデルとUserモデルを1対多の関係として繋ぐ
  • micropost(投稿)を新しい順に表示されるよう設定する
  • ユーザーを削除したらそのユーザーの投稿も削除されるよう設定する
  • userコントローラーにあったlogged_in_userをmicropostコントローラーでも使えるようにapplicationコントローラーに移す
  • feedメソッドを定義し、フィードの原型を作成
  • carrierwave gemを利用し、画像アップロード機能の実装
  • アップロードされる画像のサイズやフォーマットに対し、バリデーションを実装
  • ImageMagicをインストールし、アップロードする画像をリサイズできるように

 

 

おさらい。今回or前回までに分かった内容

  • MicropostモデルとUserモデルは1対多の関係なので
  • models/user.rbにhas_many :micropostを記述。
  • models/micropost.rbにbelongs_to :userを記述。またジェネレーターで作成する時にrails g model Micropost content:text user:references とすると自動で記述してくれる。
  • 上記のようにbelongs_to :userを記述するとMicropostテーブルにuser_idカラムが追加される
  • micropostを新しい順に表示させるにはmodels/micropost.rbにdefault_scope -> { order(created_at: :desc) }を記述する
  • ユーザーが削除された時にそのユーザーが紐づいた投稿が削除されるようにmodels/user.rbのhas_many :micropostにオプションでdependent: :destroyを追加する
  • pluralizeメソッドは指定された単語の複数形を返すメソッド
  • request.referrerは1つ前のurlを返すメソッド

 

現時点で?な点

  • プロックオブジェクトを返すとは?

 

当方、エンジニアになるべく学習している身なので、これ違うよ!と言う点や補足ありましたら、ぜひご指摘お願いいたします。