2015-01-21 26 views
0

看了很多地方,最後在這裏發佈。在codeigniter的控制器中重命名一個方法。我如何使用.htaccess重定向?

我已將codeigniter控制器中的方法從classDetails重命名爲類詳細信息。

我正在使用的.htaccess下面的代碼,但沒有奏效

RewriteRule ^classDetails/(.*)$ class-details/$1 [R=301,L] 

我也試圖在/application/config/routes.php

$route['classDetails'] = 'class-details'; 

這個代碼我也有試過

$routes['classDetails'] = 'class-details'; 

我甚至嘗試過在codeigniter中使用_remap(),如下所示

public function _remap($method, $params = array()){ 
switch ($method){ 
    case 'classDetails':$method='class_details'; break; 
}; 

if (method_exists($this, $method)) 
{ 
    return call_user_func_array(array($this, $method), $params); 
} 
show_404(); 
} 

不管我做什麼,它關係到404頁

我在哪裏做錯了?

[編輯]

我的方法的名字是class_details,我使用所謂的MY_Router.php

沒有使用正確的約定方法名稱
+0

首先你沒有使用正確的約定,你可以使用類的細節,你可以只使用方法名的方法名的所有方法名稱的小案例或駱駝案例,否則它將永遠不會工作。你可以給你的方法名稱作爲classDetails,並在路線中,你必須寫這樣的東西 $ routes ['class-details'] ='/classDetails';按預期方式, – 2015-01-21 12:07:36

回答

0

首先自定義核心類重寫URL中你可以使用類的詳細信息作爲方法名稱,你可以只使用所有的小案例或駱駝案件的方法名稱,否則它永遠不會工作。你可以給你的方法名classDetails和路線,你必須寫這樣的事情

$routes['class-details'] = '<controllerName>/classDetails'; 
+0

未能正常工作。 – spod 2015-01-21 12:40:09

相關問題