Sto provando a generare entità dal database utilizzando i comandi della console standard come descritto nella documentazione di Symfony2 qui: http://symfony.com/doc/current/cookbook/doctrine/reverse_engineering.html.Come generare entità dalla vista del database con doctrine e symfony2
php app/console doctrine:mapping:convert --from-database --force yml "src/My/HomeBundle/Resources/config/doctrine/metadata/orm"
php app/console doctrine:mapping:import MyHomeBundle yml
php app/console doctrine:generate:entities MyHomeBundle
Dopo questo, tutte le tabelle sono generate correttamente. Il problema è che questo non genererà entità per le viste del database. Quando aggiungo yml stesso file in src/mio/HomeBundle/Resources/config/doctrine/metadata/ORM per esempio:
UserInGroup:
type: entity
table: user_in_group_view
fields:
id:
id: true
type: integer
unsigned: false
nullable: false
generator:
strategy: IDENTITY
userId:
type: integer
unsigned: false
nullable: false
column: user_id
userGroupId:
type: integer
unsigned: false
nullable: false
column: user_group_id
lifecycleCallbacks: { }
ottengo questa eccezione durante l'esecuzione php app/console doctrine:generate:entities MyHomeBundle
:
Notice: Undefined index: My\HomeBundle\Entity\UserInGroup in C:\Users\ThisIsMe\Projects\SymfonyTestProject\vendor\doctrine\lib\Doctrine\ORM\Mapping\Driver\AbstractFileDriver.php line 121
domanda simile è stata postato qui: How to set up entity (doctrine) for database view in Symfony 2
So che posso creare la classe Entity, ma speravo che potessi ottenere questo generato così se cambio la mia vista, potrei semplicemente rigenerare le classi di entità. Eventuali suggerimenti?
Questi sono gli stessi passaggi che ho descritto nella mia domanda e questo genera entità per tutte le tabelle non per le viste. La differenza è nel percorso di destinazione per i file yml generati. Ho provato la tua soluzione nel caso in cui non risolvesse il problema, solo le tabelle sono trasformate in entità.So che le versioni precedenti di Doctrine (e Symfony) potevano generare entità senza punti di vista. – Kosta