У меня есть класс:
class CreateInvoiceRequest extends FormRequest
{
public function messages()
{
return [
'name' => 'required|string',
'code' => 'required|string|unique: enterprise_invoces,code',
];
}
public function rules()
{
return [
'name' => 'required|string',
'code' => 'required|string|unique: enterprise_invoces,code',
];
}
}
Также пользовательский класс проверки:
namespace App\Rules;
use Illuminate\Contracts\Validation\Rule;
class InvoiceCode implements Rule
{
public function passes($attribute, $value)
{
//
}
/**
* Get the validation error message.
*
* @return string
*/
public function message()
{
return 'The invoice code sholud be in formar <number>.<number>';
}
}
Как применить InvoiceCode
правило для валидатора внутри:
public function rules()
{
return [
'name' => 'required|string',
'code' => 'required|string|unique: enterprise_invoces,code',
];
}
Я пробовал это:
return [
'name' => 'required|string',
'code' => 'required|string|unique: enterprise_invoces,code',
'code' => new InvoiceCode()
];