2010-09-06 182 views
0

我想啓用這種路由在我的網站,用戶可以創建自己的個性化網址路由CakePHP中

test.com/[user-url]

也不用想毀了路由我現有的控制器 test.com/users test.com/business test.com/admin

,所以我說這我routes.php文件

Router::connect('/*', array('controller' => 'business', 'action' => 'view')); 

是否可以使用'/ *'正則表達式,所以我可以排除我的控制器路由?

p.s.非常像在facebook上的路由

+1

你的問題可以通過這個線程來回答:http://stackoverflow.com/questions/3646170/how-do-i-enable-seo-friendly-urls-in-cakephp – 2010-09-06 07:12:05

回答

1

以下我從我用於自己頁面的東西改編而來;我沒有爲你的用例測試過它。它應該傳遞給用戶控制器的所有請求,除了搜索和接觸

我還使用自定義路由類 http://mark-story.com/posts/view/using-custom-route-classes-in-cakephp

App::import('Lib', 'routes/UserUrlRoutes'); 

// 
Router::connect(
    '/:slug', 
    array('controller' => 'users', 'action' => 'view'), 
    array(
     'routeClass' => 'UserUrlRoute', 
     'slug' => '(?!search|contact)' 
     ) 
    ); 
Router::connect('/:slug/*', array('controller' => 'users', 'action' => 'view'), array('routeClass' => 'UserUrlRoutes')); 
+0

正是我需要的感謝! – wnoveno 2010-09-06 15:58:55