2012-08-15 100 views
0

我正在使用CodeIgniter。這是我的路由文件使用任何其他控制器類而不是默認控制器類

$route['default_controller'] = 'pages/view/home'; 
    $route['(:any)'] = 'pages/view/$1'; 

其中

頁是控制器類和視圖是它的功能和家庭是這個函數的參數。

現在,這是默認控制器。當我需要打開一些其它頁面,而不是「家」我不喜歡它從一個視圖中如下

href="<?php echo base_url('products');?> 

現在我想問的是,如果我創建一個新的控制器,我怎樣才能使用的功能是什麼那個控制器?因爲我只是將第三個參數傳遞給base_url()函數。

顯然我覺得我要寫$路線,但怎麼樣?因爲所有的流量被傳遞到

頁/圖

我試圖創建一個新的控制器,但可能無法使用它。我的新位指示是名new_controller,它有一個函數調用new_function()

和我寫的$路線如下

$路線[ '頁/視圖/產品'] = 'new_controller/new_function' ;

回答

1

如果您拿走了您在那裏放置的(:any)路線,則不必擔心路線。這是阻止所有其他控制器被加載,我想。

如果你有一個名爲「東西」

在您的網址時,你有mysite.com/stuff/foo/param代碼點火器應該繞過默認的「頁」控制器和使用

我認爲控制器你會更好做這樣的事情

$route['page/(:any)'] = "page/view/$1"; 

並更改默認只有「頁」

這將開闢新的控制器以正常的碼字方式使用

0

在CodeIgniter中,路由是在行中進行評估的,所以首先你有默認路由,然後你可以放置新路由$ route ['pages/view/product'] if你想要保留(:any)路線,並且用這個,你將這個特殊路線放在(:any)路線之前。