2012-12-31 97 views
1

我試圖做一些事情,像這樣:http://domain.com/foo/usernamehttp://domain.com/foo/username/baz但我無法弄清楚如何得到它使用routes.php文件笨路線問題

這裏工作是我在routes.php文件

$route['foo/(:any)'] = foo_controller/index/$1; 
$route['foo/(:any)/baz'] = 'foo_controller/baz/$1'; 

這裏是我的foo_controller.php

class Foo_Controller { 
    function _construct() {} 

    function index() { 
     $username = strtolower($this->uri->segment('2')); 

     ... 
    } 

    function baz() {} 
} 

我能得到什麼,當我去/富/用戶名/巴茲它只是加載索引方法。

請幫忙嗎?

+1

更改順序? – keyboardSmasher

回答

0
$username 

必須在巴茲方法和途徑:

$route['foo/baz/(:any)'] = 'foo_controller/baz/$1'; 

我認爲/富/用戶名/巴茲是錯誤的URI。

**我對英語不好。

0

交換機,並使用雙引號:

$route['foo/(:any)/baz'] = "foo_controller/baz/$1"; 
$route['foo/(:any)'] = "foo_controller/index/$1"; 

而且控制器方法:

function index($username = false) { 
    $username = strtolower($username); 

    ... 
} 

function baz($username = false) { 
    $username = strtolower($username); 

    ... 
}