1
을로드 할 수 없습니다 :젠드 양식 - 나는이 같은 형태를 가지고 요소의 데코레이터 클래스 파일
class Form_RegistrationForm extends Zend_Form {
public function init()
{
[...]
$username = new Zend_Form_Element_Text('username');
$email = new Zend_Form_Element_Text('email');
[...]
$elements = array($username, $email, [...]);
foreach($elements as $element) {
$element->addPrefixPath('Form_Decorator', 'Form/Decorator', 'decorator');
$element->addValidator('CustomErrors');
$this->AddElement($element);
}
}
}
내가 /application/modules/Form/Decorator/CustomErrors.php
내 장식을했습니다. 다음과 같은 방법으로 데코레이터 이름을 지정했습니다. class Form_Decorator_CustomErrors extends Zend_Form_Decorator_Abstract
문제는 젠드가 내 데코레이터를 찾을 수 없다는 것입니다. 오류가 발생했습니다. 메시지 : 이름으로 플러그인 'CustomErrors'을 (를) 레지스트리에서 찾을 수 없습니다. 사용 된 경로 : Zend_Validate_ : 젠드/밸리데이션/
젠드가 내 정의 된 경로를 무시하는 것처럼 보이기 때문에 리터 라이트입니다.
내 appication.ini 파일 :
[production]
phpSettings.display_startup_errors = 0
phpSettings.display_errors = 0
includePaths.library = APPLICATION_PATH "/../library"
bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"
resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
resources.layout.layoutPath = APPLICATION_PATH "/layouts/scripts"
resources.view[] =
url.full = http://87.199.35.20/Kreskoweczki/bp/
resources.db.adapter = PDO_MYSQL
resources.db.params.host = localhost
resources.db.params.username = root
resources.db.params.password =
resources.db.params.dbname = kreskoweczki
resources.db.params.charset = utf8
resources.db.params.prefix = kres_
;Mail transport settings
;mail.smpt - when false - sendmail is used
mail.smtp=true
mail.host=127.0.0.1
mail.smtpconfig.name=localhost
mail.smtpconfig.port=25
;mail.smtpconfig.auth = plain | login | crammd5
mail.smtpconfig.auth=
mail.smtpconfig.username=
mail.smtpconfig.password=
[email protected]
[staging : production]
[testing : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
[development : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
내 index.php를 :
모든 요소에 대한<?php
// Define path to application directory
defined('APPLICATION_PATH')
|| define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../application'));
// Define application environment
defined('APPLICATION_ENV')
|| define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));
// Ensure library/ is on include_path
set_include_path(
'../library/' . PATH_SEPARATOR .
'../application/modules/' . PATH_SEPARATOR .
'../application/' . PATH_SEPARATOR .
get_include_path()
);
/** Zend_Application */
require_once 'Zend/Application.php';
// Create application, bootstrap, and run
$application = new Zend_Application(
APPLICATION_ENV,
APPLICATION_PATH . '/configs/application.ini'
);
$application->bootstrap()->run();
'$ element-> getPluginLoader ('decorator') -> getPaths()'가 반환하는 것은 무엇입니까? '$ element-> addPrefixPath ('Form_Decorator', 'Form/Decorator', 'decorator'); – Michael