2014-09-12 1 views
1

J'essaie une approche créative de la méthode Validator :: extend. Il existe 1 fonction d'une classe personnalisée SchemaValidator dont nous avons besoin dans la classe Validator.Méthode d'extension du validateur dans Laravel

dans SchemaValidator.php

public function getValidated() 
{ 
    return array_intersect_key ($this->getData(), $this->getRules()); 
} 

dans app/start.php

Validator::extend('getValidated', '[email protected]'); 

Et enfin, où nous appelons la classe régulière Validator

$validator = Validator::make ($input, $rules); 

// ... some error checks 

return $validator->getValidated(); 

Cependant, cela ne fonctionne pas. Ai-je oublié quelque chose? Ou est-ce que j'ai raison de craindre que j'abuse juste Validator::extend?

modifier: La sortie erreur

BadMethodCallException 
Method [getValidated] does not exist. 

Répondre

0

Essayez d'utiliser le chemin complet à votre classe SchemaValidator. IE:

Validator::extend('getValidated', '\App\Services\[email protected]'); 
Questions connexes