Puncte:2

Luați valoarea variabilei de stat din grila de vizualizare - Drupal 9

drapel in

Am o vizualizare drupal care are un câmp multiselect în partea de sus. Pe baza selecției rândurilor grilei și a valorii câmpului cu selecție multiplă, se efectuează acțiuni specifice pe rândurile grilei. Totul se bazează pe modulul VBO. Vizualizarea arată ca mai jos:

introduceți descrierea imaginii aici

Câmpul cu selecție multiplă este lista cu titlurile nodului unui anumit tip de conținut numit „level2”. Am luat titlul nodului „level2” și am creat acea selecție multiplă cu codul de mai jos:

// Interogați nodurile
    $storage = Drupal::getContainer()->get('entity_type.manager')->getStorage('node');
    $nids = $storage->getQuery();

    // Adunați nodurile de Nivel 2 publicate și sortați după titlu
    $nids = $nids->condition('tip', 'nivel2')
      ->condition('status', 1)
      ->sort('level2_title')
      ->execute();

    // Dacă nu există noduri, treceți mai departe
    dacă (!$nids) {
      returnează FALSE;
    }

    // Începeți să construiți opțiunile pentru lista noastră de selecție
    $opțiuni = [];
    $noduri = $storage->loadMultiple($nids);

    // Împingeți titlurile în lista selectată
    foreach ($noduri ca $nod) {
      $opțiuni[$nod->id()] = $nod->getTitle();
    }

    $form['exposed_input']['ka_types'] = [
      '#type' => 'selectați',
      '#options' => $opțiuni,
      '#multiple' => TRUE,
      '#title' => 'Publicați la activitățile cheie :',
    ];
    array_unshift($form['#submit'], 'mymod_form_submit');
  }

Atunci când efectuez o anumită activitate cu câmpul multiselect, în fișierul de acțiune citesc valoarea multiselectului ca:

$ka_selected = \Drupal::state()->get('ka_types');

Cu toate acestea, nu pot citi același câmp din grilă. făcând dpm($entity) și dpm($node) nu arată deloc acest câmp în grilă. Ajutor despre cum să citiți această valoare de câmp din grila de vizualizare?

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.