我们一般使用以下命令创建资源控制器
php artisan make:controller Admin/FangAttrController -r -m Models/FangAttr
然后添加资源路由
Route::resource('fangattr', 'FangAttrController');
在控制器中使用edit或者update方法的时候(下面方法是自动生成的)
public function edit(FangAttr $fangAttr)
{
//
dd($fangAttr);
}
public function update(Request $request, FangAttr $fangAttr)
{
//
dd($fangAttr);
}
public function destroy(FangAttr $fangAttr)
{
//
dd($fangAttr);
}
死活为空,我刚开始还以为我某个地方写的有问题呢?排查了一遍控制器,模型,视图,数据库之类的都未解决。最后我查看了一下路由列表
php artisan route:list | findstr fangAttr (windows)
php artisan route:list | grep fangAttr (linux)
php artisan route:list (windows/linux)
| | POST | admin/fangattr | admin.fangattr.store | App\Http\Controllers\Admin\FangAttrController@store | web,checkAdminLogin:login |
| | GET|HEAD | admin/fangattr | admin.fangattr.index | App\Http\Controllers\Admin\FangAttrController@index | web,checkAdminLogin:login |
| | GET|HEAD | admin/fangattr/create | admin.fangattr.create | App\Http\Controllers\Admin\FangAttrController@create | web,checkAdminLogin:login |
| | POST | admin/fangattr/uploadFile | admin.fangattr.uploadFile | App\Http\Controllers\Admin\FangAttrController@uploadFile | web,checkAdminLogin:login |
| | DELETE | admin/fangattr/{fangattr} | admin.fangattr.destroy | App\Http\Controllers\Admin\FangAttrController@destroy | web,checkAdminLogin:login |
| | GET|HEAD | admin/fangattr/{fangattr} | admin.fangattr.show | App\Http\Controllers\Admin\FangAttrController@show | web,checkAdminLogin:login |
| | PUT|PATCH | admin/fangattr/{fangattr} | admin.fangattr.update | App\Http\Controllers\Admin\FangAttrController@update | web,checkAdminLogin:login |
| | GET|HEAD | admin/fangattr/{fangattr}/edit | admin.fangattr.edit | App\Http\Controllers\Admin\FangAttrController@edit | web,checkAdminLogin:login |
才发现,命令行自动生成的edit、update、destroy方法 的参数变量有问题,应该修改为与路由一致路由中参数为fangattr 而方法中参数为FangAttr $fangAttr,大小写有问题。需要修改路由Route::resource('fangAttr', 'FangAttrController');再次查看路由列表,完美解决
| | POST | admin/fangAttr | admin.fangAttr.store | App\Http\Controllers\Admin\FangAttrController@store | web,checkAdminLogin:login |
| | GET|HEAD | admin/fangAttr | admin.fangAttr.index | App\Http\Controllers\Admin\FangAttrController@index | web,checkAdminLogin:login |
| | GET|HEAD | admin/fangAttr/create | admin.fangAttr.create | App\Http\Controllers\Admin\FangAttrController@create | web,checkAdminLogin:login |
| | POST | admin/fangAttr/uploadFile | admin.fangattr.uploadFile | App\Http\Controllers\Admin\FangAttrController@uploadFile | web,checkAdminLogin:login |
| | DELETE | admin/fangAttr/{fangAttr} | admin.fangAttr.destroy | App\Http\Controllers\Admin\FangAttrController@destroy | web,checkAdminLogin:login |
| | GET|HEAD | admin/fangAttr/{fangAttr} | admin.fangAttr.show | App\Http\Controllers\Admin\FangAttrController@show | web,checkAdminLogin:login |
| | PUT|PATCH | admin/fangAttr/{fangAttr} | admin.fangAttr.update | App\Http\Controllers\Admin\FangAttrController@update | web,checkAdminLogin:login |
| | GET|HEAD | admin/fangAttr/{fangAttr}/edit | admin.fangAttr.edit | App\Http\Controllers\Admin\FangAttrController@edit | web,checkAdminLogin:login |
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有