【发布时间】:2018-12-27 18:08:38
【问题描述】:
我知道有类似的问题,但那里提供的答案对我不起作用。
我的 Laravel 应用程序中有以下 URL:
http://example.com/anatomy/18917/why-cant-i-bend-my-back
现在“解剖”部分已重命名为“生理”,相同内容的新网址如下:
http://example.com/physio/18917/why-cant-i-bend-my-back
这是一个格式为physio/{id}/{slug}的GET路由
现在,我想提供向后兼容性(适用于任何可能以旧 URL 格式为文章添加书签的用户)。
所以我尝试重定向,例如,anatomy/18917/why-cant-i-bend-my-back 到 physio/18917/why-cant-i-bend-my-back。我尝试了以下方法,但它不起作用:
$router->get('anatomy/{id}/{slug}', function() {
return redirect()->to('physio', ['id' => $id, 'slug' => $slug]);
});
我得到的错误是undefined variable: id。如果我执行以下操作,它会正确重定向到主页,但我宁愿使用给定参数重定向到实际文章。
$router->get('anatomy/{id}/{slug}', function() {
return redirect()->to('/');
});
【问题讨论】: