2017-11-10 12 views
0

を使用して認証を使用して実装しました。です。そして、それは正常に動作しています。Devise:管理者だけがサインインできるようにする

私は2つの異なる役割1)管理者と2)通常のユーザーを持っています。

ユーザーテーブルにadmin booleanフィールドを追加しました。 adminユーザーの場合、adminフィールドをtrueに設定しています。

これで、管理者ユーザーだけがログインできるようにする必要がありました。これを達成する方法はありますか。

私は、このための最も有効な解決策は、新しい監視員の戦略を定義することで、レール5

+0

あなたはdeviseセッションコントローラをオーバーライドするだけで済みます。https://gist.github.com/denmarkin/955767 –

答えて

1

を使用しています(それがsessions_controllerでいくつかのハードコードになるように簡単ではありませんが、それは右の良いのは本当に正しい方法だと簡単に保守可能なコード)。

https://insights.kyan.com/devise-authentication-strategies-a1a6b4e2b891

だから、ユーザーが管理者であることを、検証するあなたの戦略を追加する必要があります。

関連する問題