gpt4 book ai didi

php - Route::model 在 Laravel 中是什么意思?

转载 作者:行者123 更新时间:2023-12-04 12:49:58 28 4
gpt4 key购买 nike

任何人都可以解释这些行吗?它是如何工作的?

public function boot()
{
parent::boot();

Route::model('user', App\User::class);
}

接下来,定义一个包含{user}参数的路由:

$router->get('profile/{user}', function(App\User $user) {
//
});

最佳答案

这叫做 Route Model Explicit Binding

有了这个:

Route::model('user', App\User::class);

你是说:当一个 'user' 字符串在路由中用作参数时,为我创建一个 App\User::class 模型,与传递给路由的参数具有相同的 id。然后在路由方法处理程序上注入(inject)模型。

例如,url: 'profile/10' 将匹配这个路由:

$router->get('profile/{user}', function(App\User $user) {
//
});

而id为10的App\User模型会被Laravel自动获取

从一般的角度来看,通常在你的 route 你会做这样的事情:

public function edit($id)
{
//fetch the user from db...
$user = User::find($id);

//do something with the $user...
}

使用路由模型绑定(bind),您可以:

public function edit(App\User $user)
{
//do something with $user...
}

避免从数据库中获取模型:Laravel 会为您完成

关于php - Route::model 在 Laravel 中是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40237990/

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