2011-01-16 12 views
0

こんにちは私はプロジェクトに取り組んでいて、私はフッタとサイドバーを持っているので、データベースからいくつかの情報を読み込みたいのですが、どのようにすればすべてのページで同じように読み込むことができますか?codeigniter、adminシステムと自動ロード

私は管理システムを作成したいのですが、どうすればいいですか?新しいコードニードル滴下が必要か、コントローラ、モデル、ビューマップで新しいマップを作成できますか?

あなたはどうしていますか?

答えて

0

私は通常使用テンプレート方法は...などである(それは明らかにあなたのサイドバーは、あなたのデザインで、あなたのマークアップでは、「コンテンツ」の前/後に来るかどうかに依存している)

<? $this->load->view('path/to/header') ?> 

//content of page 

<? $this->load->view('path/to/sidebar') ?> 

<? $this->load->view('path/to/footer') ?> 

すべてのビューに必要な変数がある場合は、コントローラのコンストラクタでグローバルにロードすることができます。

$data->some_variable = $some_information; 
$this->load->vars($data); 

これにより、コントローラからロードするすべてのビューで利用できるようになります。

管理システムは、単に認証システムによって保護されているサイト/アプリケーションの別の領域です。まず、ユーザーの身元を確認する方法が必要です。私は通常、私の推奨する認証ライブラリとしてIon_Authを使用しています。私はで、Ion_authとあなたの "保護された"コントローラを非常にきれいに設定する方法を行っています。

1

私の考え方は、MY_Controllerを作成し、その中に汎用ロジックをすべて入れて、他のすべてのコントローラをMY_Controllerに拡張することです。これにより、コンテンツを繰り返し取得しなくても、コントローラ内で同じコードを何度も繰り返し定義して書き込む必要がなくなります。 Phil Sturgeonの記事base classes and keeping it DRYを参照してください。管理パネルなど、あなたのサイトをテンプレート化するために

は、フィルチョウザメも管理パネルを作成するために、あなたは切り替えることができます異なるレイアウトを使用してサイト上のテーマを持つことができ、簡単なtemplate libraryなど

Asを作成しました、フィルはまた、件名にも投稿を書いています。彼は管理パネルを開発するさまざまな方法についてかなり詳しく説明しています。このアプローチは最高です。記事のコメントの中には、あまりにも。彼のadmin article hereを読んでください。

+0

リンクが少し間違っています。http://philsturgeon.co.uk/news/2009/07/Create-an-Admin-panel-with-CodeIgniter :) –

+0

ああ、素敵なピックアップ。私はあなたがGoogleの検索結果からURLをコピーして、URLからGoogleのクラップをすべて削除しなければならなかったので、あなたのサイトはダウンしていました。 –

関連する問題