There is a workaround on the Laracast forum
namespace App \ Services;
use Illuminate\Validation\Validator as BaseValidator; use Illuminate\Support\Arr; class CustomValidator extends BaseValidator { protected function validateUniqueName($attribute, $value, $parameters) { // make use of parent validator validateUnique method. return $this->validateUnique($attribute, $value, $parameters); } protected function replaceUniqueName($message, $attribute, $rule, $parameters) { // parent class $data attribute contains all the validated values. $name = Arr::get($this->data, $attribute); return str_replace([':value'], [$name], $message); } }
and then in AppServiceProvider:
Validator::resolver(function($translator, $data, $rules, $messages) { return new \App\Services\CustomValidator($translator, $data, $rules, $messages); });