get $tempstore inside a twig file drupal 8

时光怂恿深爱的人放手 提交于 2019-12-08 04:50:37

问题


i'm creating a module my_module, I want to tempstore a variable and get it inside a twig file. here my controller:

$tempstore = \Drupal::service('user.private_tempstore')->get('mymodule');
            $tempstore->set('response', $response);

twig:

{{ ?? like response }}

回答1:


First register your theme in module file

function hook_theme($existing, $type, $theme, $path) {
  return [
    'my_template' => [
      'variables' => ['test_var' => NULL],
    ],
  ];
}

Second call this theme from controller and pass the variable

$tempstore = \Drupal::service('user.private_tempstore')->get('mymodule');
            $tempstore->set('response', $response);
return [
      '#theme' => 'my_template',
      '#test_var' => $tempstore,
    ];

Third render test_var in twig

<p>test_var: {{ test_var }}</p>


来源:https://stackoverflow.com/questions/57040567/get-tempstore-inside-a-twig-file-drupal-8

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!