users – ¿Cómo cargo el objeto de usuario?

Pregunta:

Necesito obtener el objeto global $user en Drupal 8. Hice $account = \Drupal::currentUser(); en la definición de getSubscribedEvents() (un método estático) dentro de un archivo de clase.

Recibo el siguiente error al ejecutar drush cr :

excepción
[error] 'Drupal \ Core \ DependencyInjection \ ContainerNotInitializedException' con el mensaje '\ Drupal :: $ container aún no está inicializado. \ Drupal :: setContainer () debe llamarse con un contenedor real. ' en /Applications/MAMP/htdocs/drupal-8.0.x-dev/core/lib/Drupal.php:129

¿Qué esta mal en mi codigo?

Respuesta:

No puede obtener el usuario actual en getSubscriptionsEvents ()

Eso no es posible ni necesario. No hay contenedor en este momento.

Lo único que puede hacer allí es devolver una lista de eventos en los que desea registrarse. Luego, esta información se almacena en el contenedor compilado y debe ser idéntica para todas las solicitudes, no debe ser condicional.

Cualquier lógica debe estar dentro de los métodos que registre allí.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top

web tasarım