Puncte:0

Formular html într-un bloc

drapel eg

Am un formular în bloc personalizat în drupal 8 și știu că aceasta nu este metoda potrivită pentru a scrie un formular într-un bloc, dar cineva l-a scris și încerc să-l repar fără a schimba metoda. În întoarcerea lui construirea funcției publice () , el a redat html-ul unui formular în markup.

 returnează matrice (
      '#markup' => '<form>
//avem aici multe intrări
//apoi la final:       
 <input type="hidden" name="form_id" value="country_language_form">
  <div class="yellow"><a class="buton buton btn--primary js-form-submit form-submit" id="edit-submit--2">'.t("Trimiteți").'< /a> </div>
</form>',

Mă întrebam cum funcționează acest cod (formularul este de fapt trimis) când utilizatorul este anonim și nu funcționează (dacă clic pe submit nu face nimic) când utilizatorul este autentificat ca administrator.

Kevin avatar
drapel in
Sincer, ai fi mai bine să-l scrii cu formularul api și să îl numești din bloc.
Puncte:3
drapel de

Prima mea presupunere ar fi o direcționare incorectă a butonului de trimitere atunci când utilizatorul este autentificat (fieți conștienți de faptul că Drupal adaugă o mulțime de elemente la DOM atunci când este conectat).

Totuși, vă recomand cu căldură să utilizați metoda potrivită și să vă construiți formularul cu API-ul de formulare. Codul dvs. de construcție a blocului ar arăta astfel:

  public function build() {
    $form = \Drupal::formBuilder()->getForm('Drupal\numele_modulului\Form\Formular');
    $build['conținut'] = $form;
    returnează $build;
  }

Și tot codul dvs. legat de formular ar fi în fișierul YourForm.php.

Mira chalak avatar
drapel eg
Mulțumescuuuu!!

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.