開発者には、モジュールのコントローラ内に、install関数、uninstall関数を含める事をお勧めします。これらの関数内で、クリーンなインストール/アンインストールのために必要なモデルファイルの読み込みを行います。コントローラにどうやってファイルを読み込むかは、「コントローラ内でファイルを読み込む」のページを参照してください。
最初に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)); }
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)); }
モジュールのインストール時にデータベース内にテーブルを作成した場合、アンインストール時には別な関数を呼び出してテーブルを削除する必要があります。また、アンインストール時にはモジュールの状態を無効にします。