【プログラミング】(Rails)raise ActionController::InvalidAuthenticityTokenが表示された際の解決方法

Ruby on Rails でタスク管理アプリケーション作成中に、以下のエラーに遭遇しました。

使用している学習本は「現場で使えるRuby on Rails 5速習実践ガイド」です。

※誤植やコード記述内容の訂正、各章の完成イメージファイルなどの確認は以下のサポートサイトにて確認可能。

現場で使えるRuby on Rails5速習実践ガイド サポートページ

 

【Railsアプリ作成中、ブラウザ上に表示されたエラー】

raise ActionController::InvalidAuthenticityToken

 

上記エラーを調べた結果、Railsにはデフォルトでaplication.controller.rb内にprotect_from_forgeryメソッドが定義されているためにこうしたエラーが発生する可能性があるとのこと。

※CSRF(Cross-Site Request Forgery)対策のための仕様であるため、開発サイドでprotect_from_forgeryを追記しておく必要があるようです。

 

taskleaf/app/controller/tasks_controller.rb内に以下のコードを追記して解消しました。

無事にアドミン権限でログインした際に、ユーザー一覧が表示されるようになりました。

 

この記事も人気ですよ