2016-11-18 1 views
1

Hallo: Ich habe durch eine Reihe von Dokumenten auf der Drupal-Website und Zweig-Dokumentation durchforstet und bin fest. Ich erhalte die Fehlermeldung:Übergeben Array oder JSON zu Drupal 8 Zweig Display-Vorlage

User error: "foo" is an invalid render array key in Drupal\Core\Render\Element::children() (line 97 of core\lib\Drupal\Core\Render\Element.php). User error: "bar" is an invalid render array key in Drupal\Core\Render\Element::children() (line 97 of core\lib\Drupal\Core\Render\Element.php).

Ich versuche, ein Array in dem Zweig Template-Variable zu übergeben:

$array = array(
     "foo" => "bar", 
     "bar" => "foo", 
    ); 

$element = array(
'#theme' => 'event_formatter', 
'#events_result' => $array, 
); 

und die Konfiguration in der .module Datei wie folgt aussieht:

return array(
    'event_formatter' => array(
     'variables' => array('events_result' => []), 
     'template' => 'event-formatter', 
    ), 

Die Übergabe einer String-Variablen scheint in Ordnung zu sein.

Danke!

+0

mir scheint, obwohl es ein Drupal Problem. Das Übergeben einer beliebigen Variablen an einen Zweig kann erfolgen – DarkBee

Antwort

0

Sie geben $ Element zurück?

Hier ist ein Beispiel von einem meiner Module:

#ChallengeController 

$challengeService = $this->challengeService; 

return [ 
    '#theme' => 'my_module_challenge_list', 
    '#challenges' => $challengeService->getTrainerChallenges() 
]; 

dann

#my_module.module 
    'my_module_challenge_list' => array(
     'variables' => array('challenges' => NULL), 
    ),