2017-09-10 7 views
0

まず、私はソフトウェアアーキテクトではないので、私にご負担ください。CodeIgniter - 認証ロジックの配置場所(サインイン、サインアップ)

私は、同僚が私たちのアプリにサインインとサインアップ機能を組み込むのを手助けしているというのが、私は基本的な理解だけで、高度に学問的でもペタントなものでもありません。現像。非常に単純なMVCフレームワークであるCodeIgniterを使用しています。

分離に非常に多くの意見があるので、私の同僚は、コントローラ内部でサインインとサインアップ機能を書き、それらの機能に、彼はまた、必要なDBのクエリを追加し、コントローラなど

内部ヘルパー関数の束を追加しました

コントローラーを使用してユーザー入力を取得し、その入力をサニタイズし、モデルを呼び出してデータを渡し、結果とレンダリングビューを取得します。などDB合理的として

の「照会の重労働を行いますAuthModelで

$auth = new AuthModel(); 
if($auth->doLogin($user,$pass)) 
    loadView("welcome-page"); 
else 
    loadView("login-fail-page"); 

とdoLogin():コントローラのような何かをするだろう念頭に置いて、この設計では

「Ok-ish」デザインは、これで十分でしょうか?または、クエリと結果セットを見てコントローラ内のすべてを探してもいいですか?

答えて

0

確かに、それは "Ok-ish"ですが、サインイン/サインインコントローラ以外のコントローラではおそらくis_logged_inメソッドが必要です。このような他のコントローラでも使用できます。

if($this->authmodel->is_logged_in() === FALSE) 
{ 
    redirect('login'); //the "signup/signin" controller 
} 
//good to go, do authenticated user stuff 

私はあなたが彼らの仕事と使用方法を確認するために設立され、尊敬CodeIgniterの認証ライブラリのカップルを研究示唆しています。

  1. Ion Auth
  2. Community Auth

CI HEREとイオン認証を使用する場合の非常に素晴らしいチュートリアルがあります。

関連する問題