dump () não funciona no Drupal 8 (página em branco, a depuração está ativada)


9

Eu quero usar dump()no meu .twigmodelo (dentro do tema personalizado).

O problema é que, quando coloco {{ dump() }}a página, fica em branco.

Eu tive:

  1. Situado twig.confing debug: trueno services.yml.
  2. Cache limpo.

No momento em que removo {{ dump() }}tudo funciona.

Depois de horas pesquisando no Google, encontrei algumas informações sobre mistério $settings['twig_debug'] = TRUE; aqui (eu nem tenho essa linha no meu arquivo, mas adicioná-la não muda nada) e $twig = new Twig_Environment($loader, array(...(onde encontrá-la mesmo?).

Eu trabalho na instalação limpa e fresca do Drupal 8, e o débito na (etapa 1.) inclui comentários no código-fonte (como deveria), mas use dump()uma vez e tudo que você vê é apenas uma página em branco.


Você verificou o log do drupal?
Eyal

Provavelmente existe um erro de PHP associado à tela em branco. Até onde eu sei, você quer ir com o Kint em vez de despejar () agora. Veja drupaleasy.com/quicktips/…
cilefen

11
Meios tela em branco na maior parte erro de memória, e desde despejo () imprime todas as variáveis que poderia ser uma dica
Paul Bönisch

Respostas:


11

Concordo com o comentário deixado para a pergunta: parece que você tem um problema de falta de memória . Verifique o log de erros para o servidor.

Eu tive o mesmo problema com dump()e kint()em uma implementação de template_preprocess_views_view_field(), enquanto tentava produzir o conteúdo de uma linha, em uma instalação limpa e fresca do Drupal 8. Encontrei uma solução alternativa para kint(), que parece corrigir temporariamente o problema de memória. Adicione as seguintes configurações no arquivo config.default.php do módulo Kint.

/** @var int max array/object levels to go deep, if zero no limits are applied */
$_kintSettings['maxLevels'] = 4;

Tome isso como uma dica: imprima uma variável específica, não toda a matriz de variáveis.


Também é possível imprimir apenas as teclas variáveis ​​(embora eu tenha esquecido como).
Eyal

Obrigado. Falta de memória foi o problema. Existe alguma maxLevelsconfiguração para dump()(algo como $_kintSettingsvocê forneceu kint())?
PolGraphic

11
@Eyal Eu acho que você estava pensandodump(_context|keys)
PolGraphic

Não foi isso? Mas se funcionar, tudo bem também.
Eyal

dump()usa $output = Variable::export($input)para gerar a matriz de variáveis. Parece que não há como definir quantos níveis se aprofundar na matriz.
Oana Hulpoi
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.