私はかなりの調査を行いましたが、満足のいく答えは見つかりませんでした。
tank auth などの CodeIgniter ライブラリはどのように使用すればよいですか? 私はいくつかの方法を見つけましたが、それらはすべてちょっとつまらないようです:
- 必要に応じてコントローラー機能を追加したり、スタイルを含めたりして、コントローラーをほとんどそのまま使用しますか?
- $this->tank_auth の呼び出しと tank auth に含まれるビューに依存して、コントローラーを例として使用して、自分自身をモデル化しますか?
- それとも、tank-auth コントローラーで MY_Controller を拡張し、それを認証が必要な特定のコントローラー用に拡張し、parent::login() (または register()、activate() など) を呼び出すだけですか?
最初のオプションが最善のようですが、大量のコードをコピーするのを避けるのは難しいようです (ログイン フォームが必要で、/auth/login にリダイレクトしたくない場合はどうなりますか?)
2 番目のオプションにも同じ問題がありますが、さらに悪化します。login_form ビューを使用するたびに、tank auth コントローラーのログイン関数のロジックを含める必要がありますね。
最後のは本当にハックで反MVCのように思えますが、間違っているかもしれません。