在Laravel 5.4中,当有多个帖子页面使用相同的URL时,可以通过使用路由重定向来解决这个问题。以下是一种可能的解决方案:
Route::get('/posts/{id}', 'PostController@show')->name('posts.show');
public function show($id)
{
$post = Post::find($id);
if ($post->slug == 'post1') {
return redirect()->route('posts.show', ['id' => 1]);
} elseif ($post->slug == 'post2') {
return redirect()->route('posts.show', ['id' => 2]);
} elseif ($post->slug == 'post3') {
return redirect()->route('posts.show', ['id' => 3]);
}
// 如果没有匹配的条件,则显示默认的帖子页面
return view('posts.show', compact('post'));
}
在上述示例中,我们通过检查帖子的slug来确定应该重定向到哪个页面。如果slug为'post1',则重定向到帖子ID为1的页面,依此类推。
这种方法可以确保当有多个帖子页面使用相同的URL时,用户将被重定向到正确的页面。
领取专属 10元无门槛券
手把手带您无忧上云