Puncte:0

How to theme a paragraph form

drapel sa

I would like to create a twig template for the form displayed inside the paragraph widget.

The only way I found is:

function mymodule_field_widget_paragraphs_form_alter(&$element, &$form_state, $context) {
// Check that the subform is opened  
if (count($element['subform']) > 2) {
    $element['subform']['#theme'][] = 'form__aw_calculator';
  }
...
}

After that, I have created a twig template form--aw-calculator.html.twig like the following

<form{{ attributes }}>
    <div class="grid--all three--columns">
        <div class="column column--first bg--red-level-3">
            {{ element.field_calc_ts }}
            {{ element.field_calc_ts_greenlight }}
            {{ element.field_calc_budget }}
            ....

Unfortunately, this is half working... some of the fields are displayed some other are not (the form mode used in the paragraph widget setting should display all of them) More over, I can't see the markup coming from my twig....

I have the feeling that this is not the right way to handle this... any idea ?

drapel ru
Ceea ce încercați să faceți aici nu va funcționa cu adevărat, nu puteți crea formulare de administrare libere, cum ar fi front-end. Chiar dacă temele de administrare folosesc fișiere Twig, acestea sunt în mare măsură controlate de API-ul formular, care impune un marcaj foarte specific și atribute foarte specifice să funcționeze corect. Modificarea marcajului HTML va distruge mai devreme sau mai târziu lucrurile, deoarece modulele contrib se bazează pe acel marcaj specific, atribute specifice și intrări ascunse. Dacă trebuie să modificați un formular dincolo de CSS, utilizați mai bine [Form API](https://api.drupal.org/api/drupal/elements/9.3.x) în loc de Twig
Baud avatar
drapel sa
Folosisem formularul de entitate Inline și am putut crea un șablon de crenguță pentru formularul meu. Se pare că acesta nu este cazul widget-ului paragraf
Baud avatar
drapel sa
Am încercat cu Form API, acesta funcționează, dar nu atunci când este adăugat un nou paragraf. Acest lucru se datorează faptului că subformularul paragraf nu conține câmpurile în timpul cârligului widget_type_form_alter. Acesta este un coșmar
4uk4 avatar
drapel cn
@Baud, adăugarea „#theme” este abordarea corectă, dar nu un șablon „form__”.Orice alt nume de șablon personalizat ar face treaba. Vedeți https://drupal.stackexchange.com/questions/249856/custom-registration-twig-template

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.