0

画像サイトのコントロール パネルを作成しています。次のようなカテゴリと呼ばれるコントローラーがあります。

class category extends ci_controller
{
    function index(){}// the default and when it called it returns all categories 

    function edit(){}

    function delete(){}

    function get_posts($id)//to get all the posts associated with submitted category name
    { 

    }
}

私が必要とするのはhttp://mysite/category/category_name、get_posts() メソッドを呼び出さなくてもすべての投稿を取得するときに、URL から呼び出さなければならないことです。

.haccess ファイルやルートを使用せずに実行したい。

CodeIgniter でその場でメソッドを作成する方法はありますか?

4

2 に答える 2

1
function index(){
    $category = $this->uri->segment(2);
    if($category)
    {
        get_posts($category); // you need to get id in there or before. 
    }

    // handle view stuff here

}

私があなたの要求を読んだ方法は、uri セグメントにカテゴリがあるかどうかに基づいて index がすべてを処理することを望んでいるということです。あなたはそのようにすることができますが、実際には、なぜそうするのですか?

フレームワークの通常の機能を使用したくない理由を正確に説明せずに使用しないと主張するのは非論理的です。このコントローラーにアクセスできる場合は、ルートにアクセスできます。では、なぜそれらを使用したくないのですか?

編集

$route['category/:any'] = "category/get_posts";

edit と delete を get_posts に送信しますが、カテゴリ ルートの上に定義することもできます。

$route['category/edit/:num'] = "category/edit";
$route['category/delete/:num'] = "category/delete";
$route['category/:any'] = "category/get_posts";

これは、カテゴリの取得前に編集および削除のために解決されます。競合するメソッドが 2 つしかないため、これはあまり問題になりません。

于 2013-04-24T18:40:09.600 に答える
0

その場でメソッドを作成するには、yii が PHP フレームワークの中で最も優れています。Gii と CRUD を使用すると非常にシンプルで強力です。

http://www.yiiframework.com/doc/guide/1.1/en/quickstart.first-app

しかし、私は Yii ではなく CI の大ファンです。yiiもかっこいいけど。

しかし、Codeigniter には代替の Web ソリューションがあります。

http://formigniter.org/こちら。

于 2013-04-24T20:58:22.527 に答える