2010-09-24 139 views
1

我用的路由器CakePHP的防止用户输入URL

Router::connect(
    '/articles/:id/:slug', 
    array('controller' => 'articles', 'action' => 'view'), 
    array(
     'pass' => array('id', 'slug'), 
     'id' => '[0-9]+' 
    ) 
); 

但如何防止用户输入/articles/view/:id。我可以让页/篇/图/:ID变成了“未找到”?

+0

我不明白你想要什么。你是否想找到没有slu pages的页面?只要执行重定向或$ this->错误(404),当slug为空时。 – sibidiba 2010-09-25 17:10:09

回答

0
Router::connect(
    '/articles/view/:id', 
    array('controller' => 'articles', 'action' => 'index'), 
); 
+0

我可以把页面/文章/视图/:id变成“NOT FOUND”? – meotimdihia 2010-09-25 05:43:55

+0

可以工作,但只是为了管理一条额外的路线,并且为了解析蛋糕(更多开销) – dogmatic69 2010-09-28 20:29:45

0

你传递的是slu so,所以只需检查$ this-> params ['slug']是否已设置,如果不是,则将它们重定向到主页。