2016-04-04 17 views
1

Ich habe Symfony 2.8. Ich verwende SonataAdminBundle v2.3 + a2lix/TranslationFormBundle v2.1 + SonataMediaBundle v2.3. Ich habe NewsAdmin Klasse:SonataAdmin Haken feuern nicht

class NewsAdmin extends Admin 
{ 
    protected function configureFormFields(FormMapper $formMapper) 
    { 
     $formMapper 
      ->add('translations', 'a2lix_translations', ['fields' => [ 
       'content' => [ 
        'field_type' => 'ckeditor', 
       ] 
      ]]) 
      ->add('excerptImage', 'sonata_type_model_list', [], [ 
       'link_parameters' => ['context' => 'default'], 
       'require' => false 
      ]) 
      ->add('excerptImageSide') 
      ->add('category', 'sonata_type_model', [ 
       'class' => 'AppBundle\Entity\NewsCategory', 
       'property' => 'shortName' 
      ]) 
     ; 
    } 

    // configureDatagridFilters(), configureListFields() ... 

    // Does not firing! 
    public function postUpdate($news) 
    { 
     dump('preUpdate'); 
    } 

    // Does not firing! 
    public function prePersist($news) 
    { 
     dump('prePersist'); 
    } 
} 

Das Problem ist, dass noch postUpdate, noch prePersist Methoden feuern nicht, so sehe ich nicht in Web-Profiler string 'Preupdate' oder 'PrePersist'. Warum das passiert? Und wie behebt man das?

P.S. Bitte lassen Sie es mich wissen, wenn Sie weitere Informationen benötigen.

Antwort

2

Fügen Sie einfach eine die hinzu und Sie werden Ihre dump sehen.

public function prePersist($news) 
{ 
    dump('prePersist'); 
    die; 
} 

EDIT

Das ist, weil die dump nicht direkt aus der Controller-Aktion, die die Ansicht rendert genannt wird, noch aus einem Verfahren durch Einwirkung genannt, aber in einem Eventlistener, die völlig eigenständige ist.

+0

Danke, jetzt funktioniert es! Kannst du mir bitte irgendwelche Links geben, die deine Worte bestätigen? Zum Beispiel im Code: '$ foo = [1, 2, 3, 4]; print_r ($ foo); for ($ i = 0; $ i <300; $ i ++) {} 'Ich sehe' print_r', obwohl es eine Operation gibt. – Molarro

+0

Ich aktualisierte meine Antwort, meine Worte waren total schlecht gewählt. – chalasr