自分の Web サイトで Tank Auth ライブラリを実装できましたが、ライブラリの自動ロードを Auth コントローラから codeignitier 自動ロード ライブラリに移動すると問題が発生します。
以下に示すように、tank Auth ライブラリの自動ロードをコメントアウトしました。ここでロードすると、すべて正常に動作します。
class Auth extends MY_Controller
{
function __construct()
{
parent::__construct();
$this->load->helper(array('form', 'url'));
//$this->load->library('form_validation');
$this->load->library('security');
// $this->load->library('tank_auth');
$this->lang->load('tank_auth');
}
これは、かなり簡単にわかるように、コードイグニティエにロードするようになりました。
$autoload['libraries'] = array('form_validation','email','upload','tank_auth');
これは私が定義したコントローラです
class MY_Controller extends CI_Controller {
public $layout;
public function __construct()
{
//this sets where the header and footer file is loacated
parent::__construct();
$this->layout = 'layout/master';
}
}
自動ロード時に発生するエラーは、ロードしているモデル名は、既に使用されているリソースの名前です: users. 明らかに、オブジェクトを 2 回作成しようとしているように見えます。
Auth ライブラリの前に自動ロードするとこの問題が発生するのはなぜですか。自動が Auth コントローラーにロードされた場合、codigntier の重要な理解が欠けている可能性があります。
ありがとう