fluid_27’s blog

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

rails tutorial第10章 自分用メモ

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

 

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

2020.12.28 ver.

 

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

  • Restfulなシステムにするため、Userクラスにedit、update、destroy、indexアクションを追加

  • pagenation機能追加

  • ログインしているユーザー以外のユーザー(本人以外のユーザー)の情報を勝手に編集・更新・削除できないようにする

   ・logged_in_user メソッドを作り、before_actionでedit、update、destoyを指定

   ・correct_user メソッドを作り、before_actionでedit、updateを指定

  • フレンドリーフォワーディングの実装(ログインしてない状態でログインが必要とされるページにアクセスした場合、ログインを促される。それからログインしたら元々アクセスしていたページにリダイレクトさせること)
  • ユーザーのindexページがログインしたユーザーしか閲覧できないよう設定
  • faker というgemを使ってサンプルユーザーを追加
  • adminという管理クラスの実装
  • ユーザーを削除するdestroyアクションは管理者しかできないようadmin_userメソッドを定義し before_actionで指定。

 

 

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

  • Userのshowやeditアクションは他ユーザーがアクセスした場合nilでなく例外として捉えて他画面(rootなど)に遷移させたいので、find_byでなくfindでユーザーidを捕まえる
  • リンクのところへ target="_blank" を追加すると、そのリンクに遷移した際に新しいタブを開いて遷移させることができる。(例:<a href ="https://example.com" target="_blank">)
  • pagenateメソッドでは キーは :page、値は :ページ番号のハッシュを引数にとる
  • render userまたはrender @usersを記述すると _users.html.erbが読み込まれる

 

現時点で?な点

  • 受入テストとは?
  • いまいち、テストや統合テストの使い分けがわからない

 

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