public static function boot() { parent::boot(); Main::$app->connection->validator->extend('imageExists', function ($attribute, $value, $parameters, $validator) { $validator->setCustomMessages([$attribute => 'Image already exists']); list($scene, $server, $id) = $parameters; $image = Image::where([$attribute => $value, 'scene' => $scene, 'server' => $server]); if ($id) { $image = $image->where('id', '!=', $id); } return $image->count() === 0; }); }