第3章 モジュールのインストール/アンインストール

開発者には、モジュールのコントローラ内に、install関数、uninstall関数を含める事をお勧めします。これらの関数内で、クリーンなインストール/アンインストールのために必要なモデルファイルの読み込みを行います。コントローラにどうやってファイルを読み込むかは、「コントローラ内でファイルを読み込む」のページを参照してください。

3.1 Install関数

最初にinstall関数に含めるべき事は、必要なモデルを読み込み、モデル内の関数を使ってデータベースにテーブルを作成します。次は、インストールしたモジュールを有効にします。したがって、install関数は、だいたい以下のようになります。

public function install() {
       $this->load->model('module/my_module');
       $this->model_feed_my_module->createTable();

       $this->load->model('setting/setting');
       $this->model_setting_setting->editSetting('my_module', array('my_module_status'=>1));
}

3.2 Uninstall関数

uninstall関数は、だいたい以下のようになります。

public function uninstall() {
        $this->load->model('module/my_module');
        $this->model_feed_my_module->deleteTable();

        $this->load->model('setting/setting');
        $this->model_setting_setting->editSetting('my_module', array('my_module_status'=>0));
}

モジュールのインストール時にデータベース内にテーブルを作成した場合、アンインストール時には別な関数を呼び出してテーブルを削除する必要があります。また、アンインストール時にはモジュールの状態を無効にします。