gpt4 book ai didi

Laravel Route - 检查 ID 是否不存在并显示 404

转载 作者:行者123 更新时间:2023-12-02 19:07:13 25 4
gpt4 key购买 nike

如果 ID 不存在,我不想显示该页面。

如何在 Laravel 的 web.php 路由中检查这一点?

我目前有以下路线:

Route::get('/public/{project_id}', 'ProjectController@public');

如何进行条件检查以查看project_id是否存在?

我看到有一个选项 Route::bind在路由文档中——这是一个解决方案吗?谢谢

更新说明:与 Laravel 4 方法略有不同,因为绑定(bind)似乎已融入到路由类中。

最佳答案

您要使用的名称为 Route Model Binding 。 Laravel 开箱即用,可以满足您的需求。如果数据库中没有该 ID,则会显示 404 页面。但是,您需要更改路线:

假设您的模型名为 Project,路线应如下所示:

Route::get('/public/{project}', 'ProjectController@public');

您的 ProjectController 应该如下所示:

public function public(Project $project) {

这样,Laravel 会自动使用您提供的 ID 解析项目,并将其注入(inject)到 $project 变量中。如果不存在具有该 ID 的记录,laravel 会重定向到 404

关于Laravel Route - 检查 ID 是否不存在并显示 404,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56804105/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com