2012-10-02 29 views
5

Sto recuperando dati con una relazione molti-a-molti e voglio definire un metodo personalizzato. È possibile (e come) utilizzare qualcosa del tipo:Definire un metodo personalizzato in Doctrine ORM PersistentCollection

$hotel = $entityManager->getRepository('Hotels')->findOneById(1); 
$types = $hotel->getTypes(); //$types is instance of **Doctrine\ORM\PersistentCollection** 
$types->myCustomFunction(); //do something 
+0

Non voglio utilizzare il repository, perché ho bisogno di lavorare solo con molte più relazioni. Voglio creare qualcosa come '$ hotel-> getTypes() -> fetchPairs()' – user1518183

+0

scusa, ho letto male la domanda, potresti voler controllare http://stackoverflow.com/questions/3691943/custom-collection-in -doctrine2 anche se – max

+0

Grazie, l'ho provato, ma questo non risolve il mio problema. Ho bisogno di chiamare il metodo personalizzato su oggetto che è l'istanza di Doctrine \ ORM \ PersistentCollection (che ho ottenuto quando recupero una relazione da molti a molti). – user1518183

risposta

0

Sembra non essere già implementato.

Vedi problema JIRA di questa dottrina: http://www.doctrine-project.org/jira/browse/DDC-547

consideri permettendo implementazioni PersistentCollection personalizzati

Dovremmo considerare che permette la configurazione delle implementazioni PersistentCollection personalizzato su una base per-associazione. Ciò potrebbe consentire agli utenti di creare un comportamento ottimizzato (SQL) per alcune delle loro raccolte per migliorare le prestazioni senza modificare il codice del modello di dominio.

Per questo, PersistentCollection deve essere progettato per l'ereditarietà.

+0

Si prega di migliorare la risposta .. – 5ervant

Problemi correlati