require_once отсутствует доктрина Zend Framework - PullRequest
0 голосов
/ 02 сентября 2010

Я интегрирую учение с Zend Framework.Я столкнулся с ошибкой, сгенерированной из cli.Похоже, что Zend_Application_Bootstrap_Bootstrap не имеет require_once для Zend_Application_Bootstrap_BootstrapAbstract.Кто-нибудь ударил по этому?

my cli-config.php

<?php

$classLoader = new \Doctrine\Common\ClassLoader('App', __DIR__ . "/../application/models");
$classLoader->register();

$classLoader = new \Doctrine\Common\ClassLoader('Cms', __DIR__ . "/../application/modules/cms-modules/models");
$classLoader->register();

$classLoader = new \Doctrine\Common\ClassLoader('Proxies', __DIR__ . "/../application/models");
$classLoader->register();


$config = new \Doctrine\ORM\Configuration();
$config->setMetadataCacheImpl(new \Doctrine\Common\Cache\ArrayCache);
$driverImpl = $config->newDefaultAnnotationDriver(array(
        __DIR__."/../application/models/App",
        __DIR__."/../application/modules/cms-modules/models/Cms"
        ));
$config->setMetadataDriverImpl($driverImpl);

$config->setProxyDir(__DIR__ . '/Proxies');
$config->setProxyNamespace('Proxies');


// Database connection information
$connectionOptions = array(
    'driver' => 'pdo_mysql',
    'dbname' => 'bella',
    'user' => 'username',
    'password' => 'password',
    'unix_socket' => '/Applications/MAMP/tmp/mysql/mysql.sock'
);

$em = \Doctrine\ORM\EntityManager::create($connectionOptions, $config);

$helperSet = new \Symfony\Component\Console\Helper\HelperSet( array(
    'db' => new \Doctrine\DBAL\Tools\Console\Helper\ConnectionHelper($em->getConnection()),
    'em' => new \Doctrine\ORM\Tools\Console\Helper\EntityManagerHelper($em)
));

Ответы [ 3 ]

0 голосов
/ 02 сентября 2010

Zend_Application не использует require_once. Это один из первых пакетов в ZF 1. *, для которого требуется автозагрузчик Zend.

0 голосов
/ 03 сентября 2010

Да, заменив загрузчик классов доктрины на автозагрузчик Zend, добился цели.Мне пришлось добавить путь к пространствам имен непосредственно к пути php, используя set_include_path.Есть ли лучший способ сделать это?Я вижу, что загрузчик классов Doctrine позволяет вам указать путь и пространство имен.Спасибо за вашу помощь, Беберлей и Алекс

0 голосов
/ 02 сентября 2010

Класс Bootstrap должен расширять класс Bootstrap Abstract.

class Bootstrap extends Zend_Application_Module_Bootstrap {
   //.....
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...