Расположение Zend Validator - PullRequest
1 голос
/ 09 февраля 2011

Нужно ли сохранять свое пользовательское местоположение Zend Validator в «Zend / Validate»?Я предпочел бы создать папку для всех своих пользовательских сценариев проверки, но не могу найти ничего в документации Zend, кроме изменения пространства имен.

Вот мое сообщение об ошибке.

"Плагин по имени 'UserNameValidate' не найден в реестре; используемые пути: Zend_Validate_: Zend / Validate /"

I 'Я хотел бы сказать ему, чтобы искать дополнительные пути.

Ответы [ 3 ]

2 голосов
/ 10 февраля 2011

Я смог решить мою проблему, используя

addElementPrefixPath('Application_Validate',
                                    '../application/validate',
                                    'validate');
1 голос
/ 09 февраля 2011

Я обычно сохраняю свои пользовательские валидаторы (например, My_Validate_Age) с именем APPLICATION_PATH/validators, например.В этом случае файл php будет: APPLICATION_PATH/validators/Age.php.С этой настройкой мне нужно добавить путь валидаторов в Zend_Autoloader.Для этого в Bootstrap.php у меня есть:

 protected function _initAutoload() {
    $autoLoader = Zend_Loader_Autoloader::getInstance();

    $resourceLoader = new Zend_Loader_Autoloader_Resource(array(
                'basePath' => APPLICATION_PATH,
                'namespace' => '',
            ));

    $resourceLoader->addResourceType('validate', 'validators/', 'My_Validate_');

    $autoLoader->pushAutoloader($resourceLoader);

}

Надеюсь, это поможет вам.

1 голос
/ 09 февраля 2011

Вы проверяли документы по API?Zend_Validate имеет метод addDefaultNamespaces ...

public static function addDefaultNamespaces($namespace){
...