【发布时间】:2018-12-06 04:45:50
【问题描述】:
我的 EmployeeCONtroller 的视图 edit.blade 有问题。
Edit.blade.php
<form method="PUT" action="{{ route('employees.update', $employee_detail->id) }}" aria-label="{{ __('Edit') }}" enctype="multipart/form-data">
web.php
Route::patch('/employee/{id}', 'EmployeeController@update')->name('employees.update');
Route::get('/employee/{id}', 'EmployeeController@destroy')->name('employees.delete');
员工控制器
public function update(Request $request, $id)
我不知道为什么,但是我的控制器上的 destroy() 函数的请求!!
我已经完成了 php artisan route:list
+--------+----------+-------------------------------------+--------------------------------+------------------------------------------------------------------------+----------------------------------------------+
| Domain | Method | URI | Name | Action | Middleware |
+--------+----------+-------------------------------------+--------------------------------+------------------------------------------------------------------------+----------------------------------------------+
| | GET|HEAD | / | | Closure | web |
| | GET|HEAD | _debugbar/assets/javascript | debugbar.assets.js | Barryvdh\Debugbar\Controllers\AssetController@js | Barryvdh\Debugbar\Middleware\DebugbarEnabled |
| | GET|HEAD | _debugbar/assets/stylesheets | debugbar.assets.css | Barryvdh\Debugbar\Controllers\AssetController@css | Barryvdh\Debugbar\Middleware\DebugbarEnabled |
| | DELETE | _debugbar/cache/{key}/{tags?} | debugbar.cache.delete | Barryvdh\Debugbar\Controllers\CacheController@delete | Barryvdh\Debugbar\Middleware\DebugbarEnabled |
| | GET|HEAD | _debugbar/clockwork/{id} | debugbar.clockwork | Barryvdh\Debugbar\Controllers\OpenHandlerController@clockwork | Barryvdh\Debugbar\Middleware\DebugbarEnabled |
| | GET|HEAD | _debugbar/open | debugbar.openhandler | Barryvdh\Debugbar\Controllers\OpenHandlerController@handle | Barryvdh\Debugbar\Middleware\DebugbarEnabled |
| | GET|HEAD | admin | admin | App\Http\Controllers\Back\AdminController@index | web |
| | GET|HEAD | admin/employee | employees.index | App\Http\Controllers\Back\EmployeeController@index | web,auth |
| | GET|HEAD | admin/employee/create | employees.create | App\Http\Controllers\Back\EmployeeController@create | web,auth |
| | POST | admin/employee/create | employees.store | App\Http\Controllers\Back\EmployeeController@store | web,auth |
| | GET|HEAD | admin/employee/show/{id} | employees.show | App\Http\Controllers\Back\EmployeeController@show | web,auth |
| | GET|HEAD | admin/employee/{id} | employees.delete | App\Http\Controllers\Back\EmployeeController@destroy | web,auth |
| | PUT | admin/employee/{id} | employees.update | App\Http\Controllers\Back\EmployeeController@update | web,auth |
| | POST | admin/employee/{id}/dossiers/create | create.document.employee.store | App\Http\Controllers\Back\DossierController@dossiers_employees_store | web |
| | GET|HEAD | admin/employee/{id}/dossiers/create | create.document.employee.show | App\Http\Controllers\Back\DossierController@dossiers_employees_create | web |
| | GET|HEAD | admin/employee/{id}/edit | employees.edit | App\Http\Controllers\Back\EmployeeController@edit | web,auth |
| | GET|HEAD | admin/entreprise | entreprises.index | App\Http\Controllers\Back\EntrepriseController@index | web,auth |
| | POST | admin/entreprise/create | entreprises.store | App\Http\Controllers\Back\EntrepriseController@store | web,auth |
| | GET|HEAD | admin/entreprise/create | entreprises.create | App\Http\Controllers\Back\EntrepriseController@create | web,auth |
| | GET|HEAD | admin/entreprise/show/{id} | entreprises.show | App\Http\Controllers\Back\EntrepriseController@show | web,auth |
| | GET|HEAD | api/user | | Closure | api,auth:api |
| | GET|HEAD | home | home | App\Http\Controllers\HomeController@index | web,auth |
| | POST | login | | App\Http\Controllers\Auth\LoginController@login | web,guest |
| | GET|HEAD | login | login | App\Http\Controllers\Auth\LoginController@showLoginForm | web,guest |
| | POST | logout | logout | App\Http\Controllers\Auth\LoginController@logout | web |
| | GET|HEAD | logout | logout | App\Http\Controllers\Auth\LoginController@logout | web |
| | POST | password/email | password.email | App\Http\Controllers\Auth\ForgotPasswordController@sendResetLinkEmail | web,guest |
| | GET|HEAD | password/reset | password.request | App\Http\Controllers\Auth\ForgotPasswordController@showLinkRequestForm | web,guest |
| | POST | password/reset | | App\Http\Controllers\Auth\ResetPasswordController@reset | web,guest |
| | GET|HEAD | password/reset/{token} | password.reset | App\Http\Controllers\Auth\ResetPasswordController@showResetForm | web,guest |
| | GET|HEAD | register | register | App\Http\Controllers\Auth\RegisterController@showRegistrationForm | web,guest |
| | POST | register | | App\Http\Controllers\Auth\RegisterController@register | web,guest |
+--------+----------+-------------------------------------+--------------------------------+------------------------------------------------------------------------+----------------------------------------------+
和 php artisan route:clear
我也试过了:
<form method="POST" action="{{ route('employees.update', $employee_detail->id) }}" aria-label="{{ __('Edit') }}" enctype="multipart/form-data">
@method('PUT')
@csrf
并让web.php中设计的路由不变。
它仍然没有工作。 继续调度到 destroy() 而不是 update()。
有人有想法吗?
谢谢大家!
【问题讨论】: