make( $this->sanitizeInput(), $this->container->call([$this, 'rules']), $this->messages() ); } /** * Sanitize the input. * * @return array */ protected function sanitizeInput() { if (method_exists($this, 'sanitize')) { $input = $this->container->call([$this, 'sanitize']); } else { $input = $this->all(); } // autoload referenced entities foreach ($this->autoload as $entityType) { if ($id = $this->input("{$entityType}_public_id") ?: $this->input("{$entityType}_id")) { $class = 'App\\Models\\' . ucwords($entityType); $entity = $class::scope($id)->firstOrFail(); $input[$entityType] = $entity; $input[$entityType . '_id'] = $entity->id; } } $this->replace($input); return $this->all(); } }