我不知道在 CakePHP 中进行查询或在 CakePHP 中进行路由的第一件事,所以我什至不知道如何开始为我的问题寻找解决方案。也许你可以帮忙。
我希望用户能够访问:
http://www.domain.com/movies/1
或者
http://www.domain.com/movie-nickname
两者都将访问“页面”控制器,“查看”操作。他们都应该提出页面 id = 1。
(我不希望他们只是去http://www.domain.com/pages/1)
每个页面都有 URL 的昵称,但如果留空,则 URL 将为http://www.domain.com/CATEGORY/PAGE,如第一个示例所示。
如果昵称没有留空,有没有办法在我的路线中进行查询,上面写着“SELECT id FROM pages WHEREnickname = 'nickname'”
最重要的是,如果 pages 表中的昵称是“this that”,则 URL 应该是http://www.domain.com/this-that,这意味着连字符需要替换为空格,然后执行查询.
我有第一个 URL 的路由:
Router::connect(
'/:category/:page',
array('controller' => 'pages', 'action' => 'view'),
array(
'pass' => array('page'),
'page' => '[0-9]+',
'category' => 'shows|music|games|books|hobbies'
)
);
我正在寻找的第二种选择可能吗?