Ho un modulo personalizzato che deve visualizzare un valore predefinito da un campo utente personalizzato. Il campo è stato creato in / admin / config / people / account / fields e il suo nome macchina è field_r_period_length_sec.
//get user
$userCurrent = \Drupal::currentUser();
$uid = $userCurrent->id();
$r_period = $userCurrent->field_r_period_length_sec;
Tuttavia, il valore non viene visualizzato e viene visualizzato questo errore:
Avviso: proprietà non definita: Drupal \ Core \ Session \ AccountProxy :: $ field_r_period_length_sec
Che cosa sto facendo di sbagliato?
$r_period = $user->field_r_period_length_sec->value;
aggiungi questo commento/** @var $user \Drupal\user\Entity\User */
sopra$user = \Drupal\user\Entity\User::load(\Drupal::currentUser()->id());