Railsのgemライブラリのひとつであるdeviseはユーザの登録やサインイン(セッション処理)など全部やってくれる素敵プラグインですが、あまりにも全部を隠蔽してやってくれすぎるので、つっこんだことと組み合わせてやろうとすると、すぐに訳わかんなくなります。 そこで、今回はdeviseのユーザ管理と共に rails3_acts_as_paranoidを用いたユーザの論理削除 deviseのデフォルトの退会はレコード削除だが、これを回避する。 bcryptの暗号方式を用いた明示的なパスワード書き換え encrypted_passwordの書き換え rspec,factory_girl_railsを用いたテスト環境 deviseのモデルのテストの通し方 deviseをオーバライドした、認証、削除の拡張実装 特定のユーザをログインさせない 特定のユーザを退会させない を実装してみたいと思います。
![Railsのユーザ認証deviseを用いた簡単かつ突っ込んだ実装 - ema25の日記](https://cdn-ak-scissors.b.st-hatena.com/image/square/277f0c32a702dba3f13d9c68b7427a453bd9e2ae/height=288;version=1;width=512/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fe%2Fema25%2F20110806%2F20110806195241.png)