0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

はじめに

Controllerを実装中に、以下のエラーに遭遇しました。
※ 多少表示を変えています。

undefined method `allow_forgery_protection' for #<ActiveSupport::HashWithIndifferentAccess:0x0000000e00abc000>

心当たりのないエラーだったので、どのように解消するか悩みました。
今回は解消内容をアウトプットいたします。

エラー原因

Controller内でconfigというメソッド名は、使用できませんでした。

今回自分が作成したメソッドは以下になります。

def config
  @config ||= Rails.application.config_for(:test)
end

ymlファイルを呼び出すのをメモ化するために作成したメソッドの命名を、configにしていました。
それが、今回のエラーの原因となっていることが判明いたしました。

解消方法

単純で、config以外のメソッド名を使用するようにしましょう。

まとめ

もしかすると、Rails側の実装と被ってしまった可能性はあるかもと思いました。

今回は予約語とは違うと思っていますが、可能性はあるので、常に頭の片隅に入れておこうと思いました。
今回の内容が、参考になれば幸いです。

最後までご覧いただき、ありがとうございました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?