Php 如何更改laravel中验证错误的键
我对laravel不熟悉,也不熟悉api,我已经制作了一个api,在其中我实现了验证。一切都很好,但我被一件小事缠住了。我想更改验证错误中的密钥名称。例如,“唯一”验证错误。这就是现在所展示的 我想将“email”(文本)键重命名为“message”(文本) 我在illumb/support/validation.php中尝试了很多东西 messagebag.php文件,但如果它发生更改,则错误显示为“数据未定义” 我下面的链接是 这是验证代码Php 如何更改laravel中验证错误的键,php,laravel,validation,Php,Laravel,Validation,我对laravel不熟悉,也不熟悉api,我已经制作了一个api,在其中我实现了验证。一切都很好,但我被一件小事缠住了。我想更改验证错误中的密钥名称。例如,“唯一”验证错误。这就是现在所展示的 我想将“email”(文本)键重命名为“message”(文本) 我在illumb/support/validation.php中尝试了很多东西 messagebag.php文件,但如果它发生更改,则错误显示为“数据未定义” 我下面的链接是 这是验证代码 $validator = Validato
$validator = Validator::make($request->all(), [
'first_name' => 'required',
'last_name' => 'required',
'email' => 'required|email|unique:users',
'fcm_token' => 'required',
'password' => 'required',
'c_password' => 'required|same:password'
]);
在幼虫中,你可以使用这个
'email'=>'required|email'
在幼虫中,你可以使用这个
'email'=>'required|email'
您可以手动循环错误消息包并构造响应以替换密钥
$validator = Validator::make($request->all(), [
'first_name' => 'required',
'last_name' => 'required',
'email' => 'required|email|unique:users',
'fcm_token' => 'required',
'password' => 'required',
'c_password' => 'required|same:password'
]);
$errors = [];
foreach ($validator->errors()->messages() as $key => $value) {
if($key == 'email')
$key = 'message';
$errors[$key] = is_array($value) ? implode(',', $value) : $value;
//implode is for when you have multiple errors for a same key
//like email should valid as well as unique
}
$result = array("status" => count($errors)?0:1, 'data'=>$errors);
return $result;
您可以手动循环错误消息包并构造响应以替换密钥
$validator = Validator::make($request->all(), [
'first_name' => 'required',
'last_name' => 'required',
'email' => 'required|email|unique:users',
'fcm_token' => 'required',
'password' => 'required',
'c_password' => 'required|same:password'
]);
$errors = [];
foreach ($validator->errors()->messages() as $key => $value) {
if($key == 'email')
$key = 'message';
$errors[$key] = is_array($value) ? implode(',', $value) : $value;
//implode is for when you have multiple errors for a same key
//like email should valid as well as unique
}
$result = array("status" => count($errors)?0:1, 'data'=>$errors);
return $result;
在resources-lang-en(或任何Langauge)-validation.php中
将此代码放在底部:
'attributes' => [
'email' => 'The Email',
],
在resources-lang-en(或任何Langauge)-validation.php中
将此代码放在底部:
'attributes' => [
'email' => 'The Email',
],
如果我能很好地理解这个问题。这将帮助您: 就你而言:
'email' => 'required|email|unique:users,message'
唯一:表、列、除、idColumn
希望能有帮助。如果我能很好地理解这个问题。这将帮助您: 就你而言:
'email' => 'required|email|unique:users,message'
唯一:表、列、除、idColumn
希望有帮助。您应该至少添加一个您尝试过的代码,以便人们可以在该代码上帮助您,您的问题似乎要求人们猜测您的代码和设置,并编写完整的代码。您为什么“需要”这个?如果要验证的字段超过1个,则该操作将无效。@Qirel我想在响应中重命名该键。我不想验证两个字段。@Dilek如果您不清楚我的问题,请告诉我。我不是要剧本。我在问做这件事的方法。我在相同的文件中尝试了相同的代码,这些文件在提供的链接中也提到过。我想用“message”(text)重命名“email”(text)键,但我不明白它的用途,索引是无效字段的名称--为什么需要更改它?我的观点是,如果某一点变成超过1个字段,你将无法区分哪个消息属于哪个字段。你应该至少添加一个你尝试过的代码,这样人们就可以在代码上帮助你,你的问题似乎是让人们猜测你的代码和设置,然后编写完整的代码。你到底为什么“需要”呢这如果要验证的字段超过1个,则该操作将无效。@Qirel我想在响应中重命名该键。我不想验证两个字段。@Dilek如果您不清楚我的问题,请告诉我。我不是要剧本。我在问做这件事的方法。我在相同的文件中尝试了相同的代码,这些文件在提供的链接中也提到过。我想用“message”(text)重命名“email”(text)键,但我不明白它的用途,索引是无效字段的名称--为什么需要更改它?我的观点是,如果有一个点变成了超过1个字段,你将无法区分哪个消息属于哪个字段。“我想用“message”替换“email”键。“email”如何将
email
更改为message
?@kerbholz编辑的问题我想用“message”(text)重命名“email”(text)键@dev:我知道,我就是这么说的。Netwons代码不执行任何与this@kerbholz是的,你有什么想法吗?“我想把“email”键改为“message”“这是如何将email
改为message
?@kerbholz编辑的问题我想用“message”(text)重命名“email”(文本)键@dev:我知道,这就是我刚才说的。Netwons代码不执行任何与this@kerbholz是的,你知道吗?当email字段为空时,程序将无法访问该方法。它直接显示来自验证异常。我已经尝试过了。哦,这意味着验证正在其他地方运行,但很难猜测信息可用的位置。当电子邮件字段为空时,程序无法访问该方法。它直接从验证异常中显示。我已经尝试过了。哦,这意味着验证正在其他地方运行,但很难猜测可用信息的位置