6

I want to add custom validation for one field in laravel nova resource file.

I have one field in db which is service_id in the service table and I have nova resource file for the same table. On create service I want to get data using service_id from other table and check data is present or not and if present then I don't want to enter that service_id in table.

So can someone help me how can I write custom validation rules in laravel nova resource file?

thisiskelvin
  • 4,136
  • 1
  • 10
  • 17
Jigar
  • 3,055
  • 1
  • 32
  • 51

1 Answers1

5

Using the following command, you can create a custom rule class:

php artisan make:rule CustomRule

Inside the fields function in your resource:

Text::make('Service ID', 'service_id')->rules(new CustomRule());

Go back to your rule file and inside the passes function:

public function passes($attribute, $value)
{
    //You can check inside the database if your record exists
    return false; //if the rule should stop the user
    return true; //if everything is fine and you want the user to proceed.
}

public function message()
{
    return 'Return your custom error message';
}
Hadi Najem
  • 338
  • 4
  • 12