【发布时间】:2020-10-03 00:06:13
【问题描述】:
我创建了用于处理验证错误的消息,但它无法正常工作。我使用了验证器方法来处理错误。以下是我的代码:
<?php
namespace App\Http\Controllers;
use App\CountryModel;
use Illuminate\Http\Request;
use App\Http\Controllers;
use Validator;
class CountryController extends Controller
{
public function country(){
return response()->json(CountryModel::get(), 200);}
public function countryByID($id){
$country = CountryModel::find($id);
if (is_null($country)) {
return response()->json(["message" => "Record not found!"], 404);
}
return response()->json($country, 200);}
public function countrySave(Request $request){
$rules = [
'name'=>'required|min:3',
'iso'=>'required|min:2|max:2',
'dname'=>'required|min:3',
];
$validator = Validator::make($request->all(),$rules);
if ($validator->fails()) {
return response()->json($validator->errors(), 400);
}
$country = CountryModel::create($request->all());
return response()->json($country, 201);
}
public function countryUpdate(Request $request, $id){
$country= CountryModel::find($id);
if (is_null($country)) {
return response()->json(["message" => "Record not found!"], 404);
}
$country->update($request->all());
return response()->json($country, 200);
}
public function countryDelete(Request $request, $id){
$country= CountryModel::find($id);
if (is_null($country)) {
return response()->json(["message" => "Record not found!"], 404);
}
$country->delete();
return response()->json(null, 204);
}
}
我应该使用哪种方法来处理验证错误以及如何解决这个问题?
【问题讨论】:
-
您在控制器内部进行验证
标签: php laravel laravel-7 laravel-validation validationerror