2013-02-04 21 views
0

我使用的是沒有虛擬機的Zend Framework樣板。Doctrine 2.2 ORM:從數據庫MappingException拋出反向工程後拋出

我的application.ini,看起來是這樣的:

;resources.doctrine.orm.entityManagers.default.metadataDrivers.annotationRegistry.annotationFiles[]  = APPLICATION_PATH "/../library/Doctrine/ORM/Mapping/Driver/DoctrineAnnotations.php" 
resources.doctrine.orm.entityManagers.default.metadataDrivers.drivers.0.adapterClass   = "Doctrine\ORM\Mapping\Driver\XmlDriver" 
resources.doctrine.orm.entityManagers.default.metadataDrivers.drivers.0.mappingNamespace  = "Square\Entity" 
resources.doctrine.orm.entityManagers.default.metadataDrivers.drivers.0.mappingDirs[]   = APPLICATION_PATH "\..\library\Square\Entity" 
;resources.doctrine.orm.entityManagers.default.metadataDrivers.drivers.0.annotationReaderClass = "Doctrine\Common\Annotations\AnnotationReader" 
;resources.doctrine.orm.entityManagers.default.metadataDrivers.drivers.0.annotationReaderCache = default 
;resources.doctrine.orm.entityManagers.default.metadataDrivers.drivers.0.annotationReaderNamespaces.Square = "Square\Entity" 

我已經在符文CLI命令如示例從這裏:

http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/tools.html#reverse-engineering

更具體地說,本之一:

$ php doctrine orm:convert-mapping --from-database xml /path/to/mapping-path-converted-to-xml 

而這生成我的xml文件與下面的納米NG模式:{}實體.dcm.xml

我已經產生基於這些XML文件我的實體類,然後試圖保存到數據庫:

try{ 
     $this->_em->persist($this->_apikey); 
     $this->_em->flush(); 
    }catch (Exception $e){ 
     echo "Something went bad --> ".$e; 
    } 

$this->_apikey = new Square\Entity\Apikeys();在構造方法。

的實體管理器拋出了一個異常:

exception 'Doctrine\ORM\Mapping\MappingException' with message 'No mapping file found' 

爲什麼主義要求的映射文件,如果在他們中產生的實體類?

我做錯了什麼?

+0

是一個名爲Apikeys.php的實體嗎? – mpm

+0

@mpm:是的!我的實體被命名爲Apikeys – Gabriel

+0

'doctrine'命令是否使用與您的應用程序相同的引導進程? – Ocramius

回答

0

Doctrine 2.2要求您保留xml文件,即使它的PHP類是由它們逆向設計的。

相關問題