laravel - 在 Laravel 8 中,如何在未成功验证数据的情况下创建具有“失败”值的状态字段?
问题描述
在 Laravel 8 中,如何在未成功验证数据的情况下创建具有“失败”值的状态字段?我似乎无法扩展或捕获生成响应的部分(其中没有成功字段)是:
trait RegistersUsers {
public function register(Request $request)
{
$this->validator($request->all())->validate();
...
return $request->wantsJson()
? new JsonResponse(["status" => "success",
"message" => "Registration successful",
"user" => $user], 201)
: redirect($this->redirectPath());
响应具有以下形式:
{
"message": "The given data was invalid.",
"errors": {
"username": [
"The username has already been taken."
],
"phone": [
"The phone has already been taken."
]
}
}
但我希望它也能status
以某种方式拥有领域。我该如何设置这个字段?提前感谢那些会做一些愚蠢的反对票的人。
解决方案
在这种情况下,您可以创建手动验证方法:
use Illuminate\Support\Facades\Validator;
public function store(Request $request)
{
$validator = Validator::make($request->all(), [
'title' => 'required|unique:posts|max:255',
'body' => 'required',
]);
if($validator->fails()) {
return response()->json(['status' => 0, 'errors' => $validator->messages()], 200);
}
}
推荐阅读
- c# - com.microsoft.appcenter.crashes.Crashes.saveUncaughtException
- haskell - ODBC 中的 Haskell Unicode 列名
- excel - 匹配两列之间的行以获得完全匹配或部分匹配
- java - 为什么 Spring Boot findById 返回 null 而 findByIdAndStatus 返回记录?
- r - 如何缩短 R 中的行名?请阅读下文
- java - 将图像添加到 java 中的问题
- blender - 使用自定义启动 .blend 文件从命令行运行搅拌机
- javascript - 如何从 JavaScript 源映射中获取键值?
- python - pythonnet clr 如何添加对 dll 程序集的引用?
- viewmodel - 在共享视图模型中杀死片段观察实时数据实例