Comment rendre par programme une vue avec des filtres contextuels dans Drupal 8?
Dans Drupal 7, j'utilise généralement le code suivant.
$view = views_get_view('test_view'); //test_view is the view machine name
$view->set_display("block"); //block is the view display name
$view->set_arguments($tid); //$tid is the argument to pass
$view->pre_execute();
$view->execute();
$content = $view->render();
Existe-t-il un autre moyen d'y parvenir dans Drupal 8?
Réponses:
Sur la base du code utilisé par
views_get_view_result()
, j'utiliserais le code suivant, comme code équivalent à celui que vous montrez dans la question.la source
:D
drupal_render()
. Il suffit de renvoyer un tableau pouvant être rendu, ce que même une classe de contrôleur peut faire.drupal_render($content)
ce m'a en fait donné la sortie rendue sur la sortie json ... est-ce que je manque quelque chose? existe-t-il un endroit pour comprendre ce que vous venez d'expliquer?drupal_render()
, il sera obsolète.la source
Pour obtenir la sortie JSON réelle de l'affichage d'exportation REST, vous pouvez faire quelque chose comme ceci:
la source