Jakoś nie mogę uzyskać Form Elements w Zend Framework 2, aby zostać zignorowanym.ZF2: Jak ustawić elementy formularzy, aby były ignorowane?
Wszystko to nie wydaje się działać:
$this->add(array(
'name' => 'submit',
'ignore' => TRUE,
'attributes' => array(
'type' => 'submit',
'value' => 'Go!',
'id' => 'submitbutton',
'ignore' => TRUE
),
'options' => array(
'ignore' => TRUE
)
));
Jak to wykorzystywane do pracy w Zend Framework1:
//Zend Framework 1
$this->addElement(
'submit',
'login',
array(
'ignore' => true,
'label' => 'Login'
)
);
EDIT:
Dlaczego Potrzebuję opcji "ignoruj"?
Załóżmy, że Twój formularz ma przycisk przesyłania. W normalnym PHP, coś w rodzaju $_POST
wyświetli również twój przycisk przesyłania. Zend 1 ma użyteczne opcje: setIgnore($flag)
i getIgnore()
, aby wykluczyć takie elementy. $form->getValues()
(po sprawdzeniu poprawności) wyklucza wszystkie elementy z flagą "ignore" ustawioną na TRUE
. Zobacz ZF1 manual.
Co masz na myśli przez ignorować. Jaki byłby cel ignorowania elementu submit? Masz na myśli wykluczenie z walidacji? Czy chcesz zezwolić na puste wartości? Twoje pytanie nie jest proste. – Sam
@Sam: Dzięki za podpowiedź. Myślałem, że "Zend-Frameworkerzy" będą wiedzieć, co mam na myśli. ;) Edytowałem moje orig. post w celu wyjaśnienia. – mdthh
O ile mi wiadomo, ZF2 nie ma takiej funkcji i osobiście uważam to za dobrą rzecz, ponieważ jest całkiem bezużyteczne. Jeśli nie potrzebujesz żadnych danych POST, po prostu go nie używaj. Nie ma takiej potrzeby, aby w ogóle tego nie mieć. Ponieważ ustawiłeś Dane formularzy za pomocą '$ form-> setData ($ request-> getPost()) możesz po prostu wstawić' getPost() 'do zmiennej, a następnie' unset ($ postData ['submit']) 'lub tak ... – Sam