私は、すべてのユーザーがずっとここに記述されているように、サービスの条件を受け入れることを強制したい:Devise、ユーザーに利用規約を受け入れる必要がありますか?
Ruby on Rails/Devise - Bypassing custom validation option in model when resetting password
は、しかし、上記のアプローチが収まらない作る2つの要件があります。
1)ユーザーは自己登録ではなく、システム管理者によって作成されます。管理者は明らかにユーザーの代理として利用規約に同意することはできません。ユーザーは最初のログイン時に利用規約に同意するよう求められます。
2)事後に利用規約が変更された場合。ユーザは、後続のログイン時に新しい用語を再入力する必要があります。
これはかなり標準的なワークフローのようです。これを達成するために何らかの手段を提供しているのですか?
もしそうでなければ、私のアプリケーションコントローラのbefore_filterにこのチェックを実装する必要があると思います。 (アプリケーションロジックとの認証の混乱を感じる...)
私はこれに頼らなければならないのですか、誰かがより良い方法を提案できますか?
おかげ
私はdevise/authはビジネスロジック(用語)とは関係ないと思います。アプリケーションコントローラでは、前のフィルタを実行する必要があります。あなたは認証をビジネスロジックと混ぜ合わせていません。ユーザーは認証されますが、利用規約に同意するまではページにアクセスできません – bcd