2013-07-24 17 views

risposta

25

È anche possibile fare questo:

protected function configureFormFields(FormMapper $formMapper) { 
    if ($this->isCurrentRoute('create')) { 
    // CREATE 
    } 
    else { 
    // EDIT 
    } 
} 
+0

Grazie! Sembra meglio :) –

+0

Qual è l'argomento? – d0001

+0

getSubject() ottiene l'oggetto (!) Sul quale sta lavorando il modulo. Credo... – caponica

2

con:

if($this->getRequest()->get($this->getIdParameter()) == null){ 
    // create 
} else { 
    // edit 
} 
+0

Grazie, ma per me è lo stesso trucco sporco del campo ID di controllo dell'oggetto entità :) –

+0

Questo restituisce sempre 'create' quando l'amministratore viene caricato tramite sonata_type_collection – 11mb

0

Io uso questo:

$creationMode = ($this->id($this->getSubject()))?(false):(true); 
if ($creationMode){ 
//Ok 
} 
0

Si può anche fare questo:

protected function configureFormFields(FormMapper $formMapper) { 
    if ($this->isCurrentRoute('create')) { 
    // CREATE 
    } 
    else { 
    // EDIT 
    } 
}