我正在使用Xampp和Laravel,而我的应用程序在尝试制作帖子时会抛出以下错误:
App \ Http \ Controllers \ HandleClient :: validate()声明应该与App \ Http \ Controllers \ Controller :: validate兼容(Illuminate \ Http \ Request $ request,array $ rules,array $ messages = Array, array $ customAttributes = Array)
表格
<form action="{{route('handle')}}" method="POST">
<label for="cn">Customer Name</label>
<input type="text" name="cn" placeholder="Customer Name" />
<input type="submit" value="Add Request"/>
<input type="hidden" value="{{Session::token()}}" name="_token" />
</form>
控制器HandleClient.php
:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class HandleClient extends Controller
{
public function validate(Request $request){
return view('finish',$request);
}
}
web.php
路由文件:
<?php
Route::get('/', function () {
return view('welcome');
})->name('home');
Route::post('/Request_handled',[
'uses' => 'HandleClient@validate',
'as' => 'handle'
]);
答案 0 :(得分:1)
默认情况下,基本Controller类使用ValidatesRequests
,它为Controller类提供验证功能。命名函数validate
会覆盖此函数。
将您的功能从validate
重命名为其他内容并更新您的路线,然后您就不应再发生冲突了。