どちらもユーザー単位で実行されるアクションであるため。showアクションとdestroyアクションも保護したほうが良い気がする。users#destroy演習2上記のアクションのうち、どちらがブラウザで簡単にテストできるアクションでしょうか?URLのGETパラメータのIDを書き換えるだけで良いため、editアクションのほうが簡単。フレンドリーフォワーディング本章での学びフレンドリーフォワーディングとはユーザーが開こうとしていたページにリダイレクトしてあげること。例)ログインしていないユーザーが、編集ページにアクセスしようとしていたなら、ログイン後も編集ページにリダイレクトする。フレンドリー(親切)ではない。アクセスするログイン画面が表示されるログイン後、無条件にユーザープロフィールページが表示されるテストコードの仕様テスト駆動開発のため、テストコードを先に書く。end【helper】フレンドリーフォワーディングの処理を実装するSessionsヘルパーに以下2つのヘルパーメソッドを追加。記憶したURLにリダイレクトするdefaultのURLは、Sessionコントローラのcreateアクションに追加する指定しない場合では、ユーザープロフィールページとなる模様。endテスト実行テスト駆動で作成したテストコードを再実行。テストがgreenになることを確認。skips演習1フレンドリーフォワーディングで、最初に渡されたURLにのみ確実に転送されていることを確認するテストを作成してみましょう。戻る必要もありますので、これもテストで確認してみてください。10.29のsession[:forwarding_url]が正しい値かどうかを確認するテストを追加してみましょう。users_edit_test.rbにテストを追加する。edit_user_path(@user)/users/762146111/editということで、http://www.example.comをedit_user_path(@user)に付与して比較する。ログイン後はデフォルト(プロフィール画面になる)ことを確認するログイン後は、forwarding_urlはnilになる。endテスト結果がgreenになることを確認。skips演習27.1.3で紹介したdebuggerメソッドをSessionsコントローラのnewアクションに置いてみましょう。(デバッガーが途中で処理を止めるはずです)。ここでコンソールに移り、session[:forwarding_url]の値が正しいかどうか確認してみましょう。(デバッガーを使っていると、ときどき予期せぬ箇所でターミナルが止まったり、おかしい挙動を見せたりします。1.1)、落ち着いて対処してみましょう)。debuggerメソッドを追加する。endブラウザを開いて、ログアウトしてから、/users/1/editにアクセスする。byebugを使って、session[:forwarding_url]の値と、request.get?の値を確認する。byebugの使い方の記事をあわせて読むと良いと思います。printデバッグにさようなら!Ruby初心者のためのByebugチュートリアルおわりにRailsのデバッガを使うようになり、開発がやりやすくなってきました。今回、全角スペースが混じってしまい、2〜3日はまってしまったので、IDEで表示できるようにするとか対策を考えたい・・・。はてなブログProSIerで働く36歳のエンジニアです。自社WEBサービスの開発・AWSのインフラ構築を行っています。なれる最高のフルスタックエンジニアを目指して、RailsやAWSをこつこつ学習中。本を10冊出すことが夢です。PL/SQL」(シーアンドアール研究所)の著者。#振り返りスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。