0

CodeIgniter を使用して webapp を構築していますが、初めてです。データベースからのデータのさまざまな配列を使用して、さまざまなセクションを含むフロント ページがあります。

私が望むのは、ベースコントローラーからデータを一度ロードし、このコントローラーを拡張して、このデータを複数のビューで再利用することです。

私がやりたくないのは、他のコントローラー間で同じデータベース呼び出しを繰り返すことです。

これは可能ですか?

私が今持っているものは次のとおりです。

class MY_Controller extends CI_Controller
{
    public function __construct()
    {
      parent::__construct();
      $data['somevar'] = $this->some_model->get();
    }

}

ページのセクションの foreach ループで $somevar を使用したいと考えています。

注: テンプレート ライブラリを使用しています。

どんな助けでも大歓迎です。

4

1 に答える 1

1

理解する必要があるのは、ページを更新するたびに CI アプリケーション全体が再度読み込まれることです (そのため、ページの読み込みごとにコンストラクター呼び出しが発生します)。したがって、あるビューから次のビューへのデータ呼び出しに持続性はありません (実際に新しいページについて話していると仮定すると)。

Cookie、クライアントストレージ、セッション、またはサーバー側のキャッシュのいずれかで、データを永続化する別の方法を考え出す必要があります。そうすれば、何度も何度も要求されることなく、別々のページ ビューでデータを利用できます。

于 2013-02-21T16:47:22.620 に答える