dump () no funciona en Drupal 8 (página en blanco, la depuración está habilitada)

9

Quiero usar dump()en mi .twigplantilla (dentro del tema personalizado).

El problema es que cuando coloco {{ dump() }}la página está en blanco.

Yo he tenido:

  1. Establecer twig.confing debug: trueen services.yml.
  2. Caché borrado.

En el momento en que {{ dump() }}elimino todo funciona.

Después de horas de buscar en Google, he encontrado información sobre misterio $settings['twig_debug'] = TRUE; aquí (ni siquiera tengo esa línea en mi archivo, pero agregarla no cambia nada) y $twig = new Twig_Environment($loader, array(...(¿dónde encontrarla incluso?).

Trabajo en la instalación limpia y fresca de Drupal 8, mientras que la depuración en (paso 1) incluye comentarios en el código fuente (como debería), pero lo uso dump()una vez y todo lo que ves es solo una página en blanco.

PolGraphic
fuente
¿Has revisado el registro de drupal?
Eyal
Probablemente hay un error de PHP asociado con la pantalla en blanco. Hasta donde yo sé, quieres ir con Kint en lugar de dump () ahora. Ver drupaleasy.com/quicktips/…
cilefen
1
La pantalla en blanco significa principalmente un error de memoria, y dado que dump () imprime todas las variables, podría ser una pista
Paul Bönisch,

Respuestas:

11

Estoy de acuerdo con el comentario que queda para la pregunta: Parece que tienes un problema de falta de memoria . Verifique el registro de errores para el servidor.

Yo tenía el mismo problema dump()y kint()en una implementación de template_preprocess_views_view_field(), al intentar dar salida al contenido de una fila, en una instalación limpia y fresca Drupal 8. Encontré una solución para kint(), que parece solucionar temporalmente el problema de memoria. Agregue la siguiente configuración en el archivo config.default.php para el módulo Kint.

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

Tómelo como una pista: imprima una variable específica, no toda la matriz de variables.

Oana Hulpoi
fuente
También es posible imprimir solo las teclas variables (aunque olvidé cómo).
Eyal
Gracias. Sin memoria fue el problema. ¿Hay alguna maxLevelsconfiguración para dump()(algo como lo $_kintSettingsque proporcionó kint())?
PolGraphic
1
@Eyal, supongo que estabas pensandodump(_context|keys)
PolGraphic
No fue eso. Pero si funciona, entonces está bien también.
Eyal
dump()utiliza $output = Variable::export($input)para generar la matriz de variables. Parece que no hay forma de establecer cuántos niveles se deben profundizar en la matriz.
Oana Hulpoi