0
0

More than 1 year has passed since last update.

サインアップ画面にアクセスしたら、ArgumentError wrong number of arguments (given x, expected 2)が出て詰まった

Posted at

はじめに

学習用のメモとして投稿します。
deviseを使用して認証機能を実装する機会がありました。
その際に遭遇したエラーArgumentError wrong number of arguments (given x, expected 2)について書いていきます。

経緯

deviseでサインアップページを作成していました。
何とか完成し、正常に動作することを確認したものの、少し時間が経って、再びサインアップページへアクセスすると、次のエラーが発生しました。

ArgumentError in XXXX::RegistrationsController#new

wrong number of arguments (given x, expected 2)
Extracted source (around line #241):

241  def serialize_from_session(key, salt)
242    record = to_adapter.get(key)
243    record if record && record.authenticatable_salt == salt
244  end

原因

色々と調べて時間を費やしましたが、改めてエラーメッセージを見ると、セッション情報からシリアライズ化するメソッドで失敗しているようです。
単にサインアップページにアクセスしただけなのに、セッション情報関連でエラーが起こっているということは、ブラウザのセッション情報が原因のようです。
ブラウザからセッション情報を削除すると、サインアップページにアクセスできるようになりました。

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