大家下午好,我有一个问题我不知道你是否遇到同样的麻烦,我升级我的Laravel项目,现在所有的路线都是这样的
Route::get('detail/client/{client}', "controller@method")
打破了一切,因为在控制器中实例化的对象变空了......
public function detail(FileRequest $request, Client $client){
dd($client) // empty object
}
如果有人可以帮我这个请。如果我删除客户端模型并生成dd
,则返回对象的ID,即" 594"
答案 0 :(得分:3)
您还没有编写升级的Laravel基础版本,但我认为它可能与\Illuminate\Routing\Middleware\SubstituteBindings::class
中间件有一些共同之处。
确保你在middlwareGroups中拥有它:
protected $middlewareGroups = [
'web' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
// \Illuminate\Session\Middleware\AuthenticateSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
\Illuminate\Routing\Middleware\SubstituteBindings::class, // <- this is the line you should have
],
'api' => [
'throttle:60,1',
'bindings',
],
];
在app / Http / Kernel.php文件中
并确保您遇到问题的路由位于web
中间件组。