2013-03-19 9 views
5

Mam problem z implementacją relacji jeden do wielu w administratorze sonaty z następującą strukturą.Sonata Admin type_collection & cascade validation

->add('adhesions', 'sonata_type_collection', array('by_reference' => false,'required' => false), array(
    'edit' => 'inline', 
    'inline' => 'table', 
    'sortable' => 'position',)) 

Dzięki tej opcji: 'edit' => 'inline', straciłem domyślną walidację zdefiniowany w AdhesionAdmin jak 'wymagane' => true.

Czy istnieje jakieś ustawienie do określenia? Próbowałem dodać 'cascade_validation' => true w ustawieniach sonata_type_collection, ale to się nie zmieniło.

Kolejne pytanie: czy mogę użyć formularza edycji pop-up z kolekcji sonata_type_collection? ('edit' => 'standard')

Wszelkie wskazówki i pomoc są bardzo cenne. Dziękujemy

Odpowiedz

15

Musisz włączyć cascade_validation. Można zrobić to w ten sposób:

class UserAdmin extends SonataUserAdmin 
    {  
    protected $formOptions = array(
     'cascade_validation' => true   
    ); 

    /* Rest of your admin class code */ 


    } 
+0

To działa, ale mam globalnego błędu. Czy możliwe jest wystąpienie błędu w danym polu? – Soullivaneuh