为了账号安全,请及时绑定邮箱和手机立即绑定

函数 PendingResourceRegistration::name(),1 的参数太少

函数 PendingResourceRegistration::name(),1 的参数太少

PHP
慕田峪7331174 2021-10-22 13:20:49
Too few arguments to function Illuminate\Routing\PendingResourceRegistration::name(), 1 passed in C:\xampp\htdocs\project\routes\web.php on line 18and exactly 2 expected.我在 laravel 上尝试了 Klorofil 模板,但它的工作很完美。我不知道为什么,但我好几次都没有打开 laravel 和 php。当我再次打开这个项目时,这正在发生。我只记得也许我更改了路由或控制器,因为我想在没有刷新和错误的情况下使用 ajax,而我忘记像以前一样更改。但是什么时候再次搜索这个模板可能不是我的错...或者php有更新。网页.phpRoute::get('/', function () {    return view('main');});Route::resource('siswa', 'SiswaController')->name('siswa');Route::get('/login','AuthController@login')->name('login');Route::post('/postlogin', 'AuthController@postlogin');Route::get('/logout','AuthController@logout');Route::get('/dashboard', 'DashboardController@index')->middleware('auth');Route::get('siswa.index', 'SiswaController@index')->middleware('auth');Route::post('siswa.index/import', 'SiswaController@import')->middleware('auth')
查看完整描述

3 回答

?
侃侃尔雅

TA贡献1801条经验 获得超16个赞

解决方案是将您的路线更改为:

Route::resource('siswa', 'SiswaController')->name('*', 'siswa')

这可能来得很晚,但我刚刚遇到了同样的错误。发生错误是因为当我们使用时Route::resource,Laravel 需要 2 个参数而不是 1 个。例如,在您的:

Route::resource('siswa', 'SiswaController')->name('siswa')

你只定义了名字。因此,Laravel 为您定义了路线 'siswa'。

但是因为你在使用Route::resource,里面定义了很多路由,比如create、edit、delete等等。所以 Laravel 需要将路由定义为“siswa.create”、“siswa.delete”等。自然地,我们不能期望列出所有的方法,所以加上 * 有助于 Laravel 理解它应该创建命名路由为 siswa.* 并且 * 代表所有不同的方法(例如创建、编辑、删除和很快)。希望这有帮助!


查看完整回答
反对 回复 2021-10-22
  • 3 回答
  • 0 关注
  • 214 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信