2013-09-04 2 views
0

J'essaie de créer une bibliothèque personnalisée et, en particulier, un validateur personnalisé. J'ai créé le fichier suivantZF2 - Ajout de bibliothèques personnalisées/classes de validateurs

/vendor/tealbury/library/Tealbury/Validator/UsernameValidator.php 

qui contient une classe

class UsernameValidator extends \Zend\Validator\AbstractValidator { ... } 

J'ai ensuite ajouté les lignes suivantes à composer.json

"autoload" : { 
    "psr-0" : { 
     "Tealbury\" : "vendor/tealbury/library" 
    } 
} 

Dans mon modèle, je puis inclus validateur comme si

use Tealbury\Validator\UsernameValidator; 

Cependant, lorsque je tente d'appeler

new UsernameValidator; 

Je reçois les éléments suivants

Fatal error: Class 'Tealbury\Validator\UsernameValidator' not found in /usr/local/zend/var/apps/http/__default__/0/1.0.0/module/Application/src/Application/Model/Join.php on line 58 

J'ai mis cela ensemble en utilisant les informations du Zend Framework 2 documentation et d'une question similaire posée ici. Est-ce que je manque quelque chose?

Répondre

0

Le problème est avec la directive autoload dans composer.json, vous n'avez pas besoin de la barre oblique finale sur le nom de l'espace de noms. En outre, assurez-vous que votre classe est correctement nommée avec namespace Tealbury\Validator en haut.

Questions connexes