0

URL の製品を含む Web サイトを作成しました: http://somesite.com/controller/function/brand_id/product_id。これらの ID をより検索しやすい名前に変更したいと思います。これらの ID はすべて名前付きの DB にあります。これらの名前を DB から取得して URL に入れることはできますか? これは、ルーティング ツールを使用できないためです。製品とブランドは動的であり、いつでも削除または (名前) を変更できます。したがって、これをルートにハードコードすることはできません。

努力してくれてありがとう

4

2 に答える 2

1

Codeigniter 組み込み関数を使用して、URL でいくつかの関数を使用でき_remapます。コントローラー内で次の関数を使用します。

public function _remap($method){
if ($method == 'project-name')
{
   //display project1
}
elseif($method == 'project-name2')
{
   //display project2
}

params を使用した別の例:

public function _remap($method, $params = array())
{
    $method = 'process_'.$method;
    if (method_exists($this, $method))
    {
        return call_user_func_array(array($this, $method), $params);
    }
    show_404();
}

$methodfunctionURL にあります: http://somesite.com/controller/function/brand_id/product_id

データベースからメソッドを抽出することで、さまざまなメソッドに対して同じことができます

ここを見てください:http://codeigniter.com/user_guide/general/controllers.html#remapping

于 2012-05-06T22:57:06.170 に答える