2011-11-09 106 views
0

我有一個網站叫:訂單。Codeigniter與子文件夾和uri段

在控制器文件夾中,我有一個名爲manage的子文件夾。

在那裏我有一個名爲控制器:editOrder

在editOrder控制器我有一個指數函數,得到一個$ id作爲一個參數。

在我的形式我有一個鏈接:editOrder/1

在我的路線文件,我有這樣的代碼:$route['editOrder'] = 'manage/editOrder'; 的鏈接給未找到錯誤頁面。

我試圖手動去的網頁,這樣的:http://localhost/orders/editOrder/1 找不到網頁

我試着這樣說:

在我的路線文件:

$route['editOrder/(:num)'] = "manage/editOrder/$1"; 

找不到網頁

我已將我的配置文件更改爲:

$config['uri_protocol'] = 'PATH_INFO'; 

$ config ['enable_query_strings'] = TRUE;

並試圖通過這種方式:

http://localhost/orders/?c=editOrder&m=index&id=1 

這需要我的主頁。

我怎樣才能通過識別碼區段至editOrder控制器?????

Ahhhhhhhhhh

我怎麼會調用這個控制器????

+0

你能詳細告訴一下網址你有和它應該如何改變/路由? – user973254

+0

做任何你海基會網址的工作嗎?如果不是,它可能是你的htaccess文件。 – minboost

回答

0

確保:

  1. 您的自定義路由自帶2級默認的了。因此,它應該是:

    $route['default_controller'] = "defaultController"; 
    $route['404_override'] = ''; 
    $route['editOrder/(:num)'] = "manage/editOrder/index/$1"; 
    
  2. 你的控制器文件editOrder.phpclass editOrder extends CI_Controller,是在文件夾內"controllers/manage/";

  3. 您的editOrder控制器有一個function index($id) {}方法;

總之,如果你要調用一個方法,你需要指定它。在路由的情況下,這意味着你必須指定甚至index()方法。