Newbie
Newbie

Reputation: 11

Multiple inputs in one validation rule

return [
'contract_code' => 'required', 
'name' => 'required|string',
'abbreviation' => 'required|string',
'linecount_divisor' => 'required|integer'
];
// into input fields => 'required'

How to shorten the validation rule in multiple inputs?

Upvotes: -1

Views: 252

Answers (3)

Engr Talha
Engr Talha

Reputation: 404

Try this one in Laravel

$validation=array();
        $validation= [
            'contract_code' => 'required',
            'name' => 'required|string',
        'abbreviation' => 'required|string',
         'linecount_divisor' => 'required|integer'
        ];
       
        $this->validate($request,$validation); 

Upvotes: -1

felixkpt
felixkpt

Reputation: 148

Here is a solution assuming all input fields need to have a common rule like required.

$rules = array_map(function($curr) { return [$curr => 'required']; }, array_keys(request()->all()));

Upvotes: 0

Khayam Khan
Khayam Khan

Reputation: 1235

if You have the same validation rule for multiple and you want to shorten your code just use form requests.

php artisan make:request RequestName

And then in the controller Functions use it

public function save(RequestName $requestName)
{
}

don't forget to use that request class.

use App\Http\Requests\RequestName;

Upvotes: 0

Related Questions