Laravel:路由参数不工作

Laravel:路由参数不工作,laravel,Laravel,今天我将我的laravel项目切换到了我的live服务器,路由参数的类型提示不再起作用。参数被正确识别,但只要我添加暗示我收到null的类型 id为1的帖子已经存在,我已经仔细检查过了,所以我假设一些服务器设置是错误的 有人知道什么地方出了问题吗 路线: Route::get('post/{post}', 'PostController@show'); 服务器调用: http://my-server/post/1 后置控制器: public function show(Post $post)

今天我将我的laravel项目切换到了我的live服务器,路由参数的类型提示不再起作用。参数被正确识别,但只要我添加暗示我收到null的类型

id为1的帖子已经存在,我已经仔细检查过了,所以我假设一些服务器设置是错误的

有人知道什么地方出了问题吗

路线:

Route::get('post/{post}', 'PostController@show');
服务器调用:

http://my-server/post/1
后置控制器:

public function show(Post $post){
  dd($post); //null
}

public function show($post){
  dd($post); //1
}

只需尝试添加另一个参数,如$id。因为show是默认的laravel函数,所以只需将其作为资源控制器路由或尝试下面的方法即可

public function show(Post $post, $id){ dd($id); //It will return the id } 公共功能展示(Post$Post$id){ dd($id);//它将返回id }
三重检查:)只需尝试执行
dd($post->all()->pull('id')
在live server上显示了什么?您使用的是哪个版本的Laravel?另外,你能分享你的模型吗;有输出:[0=>1]并且我正在PHP7.2.3上使用laravel 5.5.40。您是否在本地使用windows操作系统?在kernel.PHP中是否有
\illumb\Routing\Middleware\SubstituteBindings::class
?我打赌你只是在现场和本地有不同的代码。替换索引与web服务器设置无关。