开发者

routing in cakephp

I want to enable this kind of routing in my site where users can create their vanity urls

test.com/[user-url]

but also dont want to ruin the routing for my existing controllers test.com/users test.com/business te开发者_高级运维st.com/admin

so I added this to my routes.php

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

is it possible to use regex for the '/*' so I can have exclude the routes for my controllers?

p.s. pretty much like the routing in facebook


The following I have adapted from something that I used for my own pages; I have not tested it for your use case. It should pass all requests to Users controller except search and contact

I also uses custom route classes 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

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜