How to create custom validation rules with Laravel?
- Run this php artisan make:rule OlympicYear
- After that command it generates a file app/Rules/OlympicYear.php
- We can write rule in the passes() in OlympicYear.php generated file. It will return true or false depending on condition, which is this in our case
public function passes($attribute, $value)
return $value >= 1896 && $value <= date('Y') && $value % 4 == 0;
- Next, we can update error message to be this:
public function message()
return ':attribute should be a year of Olympic Games';
- Finally, we use this class in controller's store() method we have this code:
public function store(Request $request)
$this->validate($request, ['year' => new OlympicYear]);
Suggest An Answer
No suggestions Available!