- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试抛出自定义异常。该项目是一个使用 Google Places API 的 API,如果结果的状态为 ZERO RESULTS
,我需要抛出验证异常。这是因为存储的数据有误。
为了更清楚这一点。注册用户修改他的个人资料,其中包括地址、邮政编码等。然后我们有一个 get 方法,我们在其中查询地点 API,这是为了获取纬度和经度并将其添加到配置文件模型中。
if (strcmp($status, 'ZERO_RESULTS') == 0 || strcmp($status, 'INVALID_REQUEST') == 0) {
$error = ValidationException::withMessages([
"one_thing" => ["Validation Message #1"], "another_thing" => ['Validation Message #2']
]);
throw $error;
}
我在 StackOverflow 上阅读了一些答案,我什至尝试了这些答案,但我只收到以下错误:
{
"errors": [
{
"status": 500,
"code": 1,
"source": {
"pointer": "ErrorException line 73 in /Users/jacobotapia/Documents/Espora/one-mind-backend/vendor/sfelix-martins/json-exception-handler/src/ValidationHandler.php"
},
"title": "errorexception",
"detail": "Undefined index: one_thing"
}
]
}
我还想指出,所有过程都发生在 GET
方法期间。
我唯一想要的是返回一个错误,指出我们无法从 google places API 获得任何结果。这是为了告诉客户用户在应用程序中注册的个人资料数据是错误的。
我做错了什么?
最佳答案
如果您有字段名称“one_thing”和“another_thing”,您可能想尝试一下
$error = Illuminate\Validation\ValidationException::withMessages([
"one_thing" => ["Validation Message #1"],
"another_thing" => ['Validation Message #2']
]);
throw $error;
检查 withMessages() 方法 definition
public static function withMessages(array $messages)
{
return new static(tap(ValidatorFacade::make([], []), function ($validator) use ($messages) {
foreach ($messages as $key => $value) {
foreach (Arr::wrap($value) as $message) {
$validator->errors()->add($key, $message);
}
}
}));
}
键被视为字段名称,因此您将通过的 $errors 将与相应的字段相关。
基本都这样
$error = \Illuminate\Validation\ValidationException::withMessages([
'field_name_1' => ['Validation Message for field name 1'],
'field_name_2' => ['Validation Message for field name 2'],
'field_name_3' => ['Validation Message for field name 3'],
]);
throw $error;
试试这个
表单代码是
<form action="{{ route('test-validation') }}" method="POST">
@csrf
<input type="text" name="test" value="" />
@if( $errors->has('test') )
@foreach( $errors->get('test') as $err )
{{ $err }}
@endforeach
@endif
<input type="submit" name="submit" value="Submit" />
</form>
在你的 routes/web.php 中
use Validator;
use Illuminate\Validation\ValidationException;
use Illuminate\Http\Request;
Route::post('test-validation', function(Request $request){
$fields = array('test' => $request->input('test'));
$rules = array('test' => 'required|min:5');
$validator = Validator::make($fields, $rules); // Empty data and rules fields
$validator->errors()->add('test', 'This is the error message for test field');
throw new ValidationException($validator);
redirect()->withErrors($validator);
})->name('test-validation');
使用此代码,您应该能够正确获取错误。
关于php - Laravel 抛出一个自定义的 ValidationException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56453852/
我正在研究错误。我有一个导入到应用程序中的excel文件。 该文件包含有关核心域对象的信息(Zoo,请参见下文)。每行都有两个单元格,名称的字符串值和动物数量的整数值。 如果我在此excel文件中有一
我有一个 CourseOffering 域类,它具有 Term 类型的属性,它是另一个域类。 类(class)设置 class CourseOffering { static fetchMod
我尝试使用 REST 服务提取表单的 XML 数据,如下所示: http://localhost:8080/orbeon/fr/service/mysql/crud///data//data.xml
我正在尝试抛出自定义异常。该项目是一个使用 Google Places API 的 API,如果结果的状态为 ZERO RESULTS,我需要抛出验证异常。这是因为存储的数据有误。 为了更清楚这一点。
我最近决定尝试使用 amazon-dynamodb 并且仍在尝试掌握它。 在我的用例中,我必须在 DynamoDB 的项目中存储两个与字符串列表(“SS”)具有相同值的变量。当我尝试这样做时,这就是我
我有简单的域: package app class Customers { String CUSTOMER String NOTE static mapping = {
我正在使用 C 中的 aws-dynamo 库执行以下 dynamoDB 查询参数。 { "TableName": "table4", "KeyConditionExpression": "#yr =
我正在尝试在 C# 控制台应用程序中使用 CSVHelper。我有一个异常(exception): CsvHelper.ValidationException: 'Header matching ['
我有这样一种情况,我们的一位开发人员想要制定一个标准,我们在所有应用程序中抛出 System.ComponentModel.DataAnnotations.ValidationExceptions 向
我在DynamoDB中创建了一个表'user_info',该表具有一个主哈希键'user_id'(String),没有范围键。然后,我创建了2个AWS lambda函数来插入和查询项目。我可以在表中插
我遇到过这样的情况:我在 EF 4.1 的 DatabaseInitializer() 中初始化我的模型,并收到此恼人的错误“一个或多个实体的验证失败。有关更多详细信息,请参阅“EntityValid
If the incoming request was an AJAX request, no redirect will be generated. Instead, an HTTP respons
我正在尝试使用 XML 文件设置 Quartz Scheduler 作业,调度程序对象正在读取 .properties 文件并查找 XML 作业定义文件。但是我遇到了解析验证异常,并且我似乎无法根据错
我有一个基地DbContext喜欢上课 public abstract class DbContextBase : DbContext { public DbContextBase()
我在使用 DynamoDBMapper 将新项目 (WCode) 保存到 DynamoDB 实例时遇到此错误: Exception in thread "Thread-1" com.amazonaws
我尝试使用 ical4j 构建日历。当我尝试将输出输出到文件时,它给了我一个异常,如下所示: net.fortuna.ical4j.validate.ValidationException: Prop
我有一个 spring 方法:我在构造对象之后验证实体,该对象之前是从数据库中获取的。 @Transactional(rollbackFor={ValidationException.class})
我正在使用 Spring 3.0。我没有使用 hibernate 或 maven 依赖项。我已经下载了 jar 文件并将其添加到我的类路径中。我收到 javax.validation.Validati
在 ConstraintValidator 中使用依赖注入(inject)时,我遇到了意外的行为。正在类里面进行评估。 实体类: @Entity @ValidDemoEntity public cla
我正在尝试为我的应用程序添加 JPA 支持,但是,我收到此错误: Caused by: javax.validation.ValidationException: Unable to find a d
我是一名优秀的程序员,十分优秀!