Рейтинг:-1

Как получить (целочисленный) uid из сущности пользователя?

флаг kz

На всякий случай для пользовательского объекта был метод «getUid()», я попробовал его, но получил:

Вызов неопределенного метода Drupal\user\Entity\User::getUid()

Есть ли способ получить uid из пользовательского объекта без загрузки полного объекта пользователя?

Jaypan avatar
флаг de
Если у вас есть сущность пользователя, она уже загружена, и вы можете получить от нее идентификатор. Drupal 7: `$user->id` Drupal 8+: `$user->id()`.
Рейтинг:2
флаг de

Если у вас есть сущность пользователя, она уже загружена, и вы можете получить от нее идентификатор.

  • Друпал 7

    $пользователь->uid
    
  • Друпал 8 и выше

    $пользователь->идентификатор()
    
apaderno avatar
флаг us
Это также работает с объектом, возвращаемым из `\Drupal::currentUser()`. Если код хочет избежать загрузки полного объекта User и ему нужен идентификатор для текущего пользователя, вошедшего в систему, следует использовать этот код. Это не похоже на случай OP, поскольку ошибка относится к `Drupal\user\Entity\User`, что означает, что код пытается вызвать `getUserId()` для объекта `Drupal\user\Entity\User`, не объект `Drupal\Core\Session\AccountProxy`. Кажется, что _без загрузки полной части User object_ противоречит тому, что делает код.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.