问题描述
Router::redirect() is deprecated. Use Router::scope() and RouteBuilder::redirect() instead.
该消息提供了一些线索,但未在文档中找到直接答案。
直接切换到 RouteBuilder::redirect()
是不可能的,因为它不是静态函数。
解决方法
好的,我最后找到了问题。一旦您正确阅读文档中的 Router::scope()
用法并注意到您获得 RouteBuilder
对象作为函数的参数,这很容易。
文档:https://book.cakephp.org/3/en/development/routing.html#quick-tour
原始(已弃用)
Router::redirect('/old','/new');
新
Router::scope('/',function ($routes) {
$routes->redirect('/old','/new');
});