How can I manually return or throw a validation error/exception in Laravel?

前端 未结 5 676
我在风中等你
我在风中等你 2020-12-12 19:36

Have a method that\'s importing CSV-data into a Database. I do some basic validation using

class CsvImportController extends Controller
{
    public functio         


        
5条回答
  •  小蘑菇
    小蘑菇 (楼主)
    2020-12-12 19:58

    As of laravel 5.5, the ValidationException class has a static method withMessages that you can use:

    $error = \Illuminate\Validation\ValidationException::withMessages([
       'field_name_1' => ['Validation Message #1'],
       'field_name_2' => ['Validation Message #2'],
    ]);
    throw $error;
    

    I haven't tested this, but it should work.

    Update

    The message does not have to be wrapped in an array. You can also do:

    use Illuminate\Validation\ValidationException;
    
    throw ValidationException::withMessages(['field_name' => 'This value is incorrect']);
    

提交回复
热议问题