2011-02-07 2 views
0

私は最初のcodeigniter(news)ウェブサイトを書いています。 このシナリオで最も適切な方法は何でしょうか。codeigniterメソッドの質問

ブラウズと呼ばれるリンク(メソッド)があるとします。ユーザーがそのリンクをクリックすると、ページに都市のリストが表示されます。ユーザーが都市をクリックすると、その都市の利用可能なカテゴリがページに表示されます。カテゴリをクリックすると、選択したカテゴリのサブカテゴリが表示されます。

ユーザーがサブカテゴリのリンクをクリックすると、ページがリロードされ、選択した都市、カテゴリ、およびサブカテゴリに基づいて結果が表示されます。

例えばURIは、CodeIgniterのを行うには正しい方法ですfoo.bar/browse/city/rubrics/subrubric/

のように見えるのだろうか?

答えて

3

CIはURIセグメントで動作します。 (ルーティングなし)動作するように上記のためにあなたの方法のようなものを見ることができる

function browse($city=null,$category=null,$subcat=null) 
{ 
    if($category==null && $subcat==null) 
    { 
     $this->load->view('show_cities'): 
    } 

    if($city!=null && $category!=null && $subcat==null) 
    { 
     $this->load->view('show_categories'); 
    } 

    if($city!=null && $category!=null && $subcat!=null) 
    { 
     $this->load->view('show_subcats'); 
    } 

} 

load->viewは一例であり、あなたは、モデルまたは何との何らかの相互作用を持っていると思います。

site.com/browse/city/foo/barを参照すると、subcats - CIがURIセグメントをメソッドに渡します。

これを行う方法は他にもありますが、これは単なる1つであり、おそらく最も効率的ではありません。

+0

都市を表示する方法、カテゴリを表示する方法、サブカテゴリを表示する方法を作成して、それぞれに異なる方法を呼び出すこともできます。 –