Как мне из PHP воссоздать мою базу данных, возможно, вставив данные по умолчанию. В настоящее время я собираюсь использовать это поведение для модульных тестов.
Я использую Doctrine 2, Zend Framework 1.11, Zend_Test
для модульных тестов
Я мог бы использовать CLI
doctrine orm:schema-tool:update --force
или
doctrine orm:schema-tool:drop --force
doctrine orm:schema-tool:create
Я ищу замену PHP, пока нашел это
но это будет выглядеть примерно так
$tool = new \Doctrine\ORM\Tools\SchemaTool($em);
$classes = array(
$em->getClassMetadata('Entities\User'),
$em->getClassMetadata('Entities\Profile')
);
$tool->dropSchema($classes, \Doctrine\ORM\Tools\SchemaTool::DROP_DATABASE);
$tool->createSchema($classes);
И я действительно не хочу указывать классы моделей, особенно в процессе разработки, когда они могут измениться. Он должен просто читать из всех классов, указанных в ... ниже ... как и в случае с CLI, вам не нужно указывать классы, которые вы хотите?
$driverImpl = $config->newDefaultAnnotationDriver(array(realpath('../models')));
$config->setMetadataDriverImpl($driverImpl);