railsのdeviseでハマりAgain
今度はcurrent_sign_in_at
メソッドがないとおっしゃる。
migrateしてできたyyyymmddhhhhhh_devise_create_users.rb
を見ると、
## Trackable # t.integer :sign_in_count, default: 0, null: false # t.datetime :current_sign_in_at ...
コメントアウトされている。
コメントアウトを外す。
次に、userモデルを開く。
class User < ApplicationRecord devise :database_authenticatable, :registerable, :recoverable, :rememberable, :validatable end
となっているので、:trackable
を追加する。
その後、rails db:rollback
をしてもとに戻す。
再びrails db:migrate
を行う。
すると、無事current_sign_in_at
メソッドを見つけてくれる。
追記
userモデルに
class User < ApplicationRecord devise :database_authenticatable, :registerable, :recoverable, :rememberable, :validatable end
で:trackable
を有効化した。
しかし、yyyymmddhhhhhh_devise_create_users.rb
の# t.datetime :current_sign_in_at
だけしかコメントアウトを解除しないと、
Trackableに紐づくメソッドを全部有効にしてあげないと、メソッドありません(怒)が大発生するので、
紐づくメソッドは全部コメントアウトを解除してあげました。