【Rails】deviceで論理削除したユーザをログインできないようにする
2017-09-04 | カテゴリ >> Ruby

Railsでdeviceを使っていますが、ユーザーのレコードは残っているものの論理削除した場合はログイン画面で弾くようにするにはどうすればいいのか調べました。

こちらの記事がとても参考になりました。

deviceには inactive_message というメソッドが用意されておりover writeしなよと言っております。

たとえば今回自分のケースですと、あるUserのモデルには state という状態を管理するカラムがあるので、その中身が特定の状態でない場合はエラーメッセージを出す的な事をしました。

def active_for_authentication?
  super && self.state == 'active'
end

これでログイン処理が弾かれて、エラー文が errorのmessagesに入ってくれました。
おわり

 

Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedIn
2017-09-04 | カテゴリ >> Ruby 

関連記事

Comment





Comment



*