Slanje (Submit) konfiguracione forme bloka
Dodajte sledeći metod u klasu HelloBlock. U ovom primeru on se nalazi u fajlu src/Plugin/Block/HelloBlock.php, ali kako počinjete da razmišljate u više OOP režimu, gde se fizički nalazi u strukturi fajlova je manje važno nego u prostoru imena. Ako ste vrlo pametan OO programer, držite ove dve stvari veoma usklađene. Ali za svaki slučaj, ovo je zapravo prostor imena, veoma sličan imenu fascikle modula i imenu mašine za našu prethodnu diskusiju o modulu u ovom poglavlju, što će biti važno kasnije kada budete želeli programski da komunicirate sa kodom vašeg modula.
/** * {@inheritdoc} */ public function blockSubmit($form, FormStateInterface $form_state) { $this->configuration['hello_block_name'] = $form_state->getValue('hello_block_name'); }
Ako imate fieldset omotač oko elemenata forme, trebalo bi da prosledite niz funkciji getValue() umesto da prosleđujete samo ime polja. Ovde je myfieldset skup polja koji obavija polje hello_block_name.
$this->configuration['hello_block_name'] = $form_state->getValue(['myfieldset', 'hello_block_name']);
Dodavanje ovog koda će značiti da će forma biti obrađena i da će ulazni podaci forme biti sačuvani u konfiguraciji za ovu instancu bloka, nezavisno od drugih instanci bloka. Međutim, blok još uvek ne koristi rezultate promene konfiguracije. To je na sledećoj strani knjige.
Drupal’s online documentation is © 2000-2020 by the individual contributors and can be used in accordance with the Creative Commons License, Attribution-ShareAlike 2.0. PHP code is distributed under the GNU General Public License.