2011-10-03 15 views
5

ho Entity nella mia app, che ha 2 campi traducibili, utilizzando Dottrina Translatable Extension:Utilizzando dottrina traducibile con Symfony 2 forme

class Page implements Translatable 
{ 
    /...... 

    /** 
    * @var string $name 
    * @Gedmo\Translatable 
    * @ORM\Column(name="name", type="string", length=255) 
    */ 
    private $name; 

    /** 
    * @var text $content 
    * @Gedmo\Translatable 
    * @ORM\Column(name="content", type="text") 
    */ 
    private $content; 

/........ 
} 

Io uso una tabella per più entità traduzioni. Ora mi piacerebbe usare il modulo uno per ottenere i valori originali e tradotti (in 1 lingua) per questi attributi, quindi dovrebbe avere 4 campi.

Ho definito una nuova forma derivata da AbstractType e ho provato ad aggiungere questi 2 campi utilizzando FormBuilder, ma dice che le loro entità corrispondenti non contengono questi campi. Ho provato ad aggiungere questi campi alle entità e a dichiarare i getter per loro, ma l'unico modo in cui io conosca le traduzioni per le entità è di utilizzare il gestore di entità dedicato e AFAIK che fornisce l'accesso all'entità al gestore di entità non è una buona pratica.

C'è un modo per utilizzare i moduli per gestire tale cosa?

+1

che non so se si adatta alle vostre esigenze, ma questo pacchetto ha lavorato molto per me https://github.com/a2lix/TranslationFormBundle – snyx

+0

tuo grado di utilizzare TranslationExtraBundle: https://github.com/ideea/TranslationExtraBundle E progetto open source, quando usi questo pacchetto: https://github.com/ZhukV/Nadiyka – ZhukV

+0

Inserisci il tuo codice da FormType. – jovobe

risposta