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.* 并且 * 代表所有不同的方法(例如创建、编辑、删除和很快)。希望这有帮助!
- 3 回答
- 0 关注
- 214 浏览
添加回答
举报
0/150
提交
取消