как правильно получить ID? - PullRequest
2 голосов
/ 02 июля 2011

Я использую Symfony 1.4, Doctrine 1.2 и sfDoctrineGuardPlugin. В actions.class.php у меня есть:

$this->idsfguard = $this->getUser()->getGuardUser()->getId();

если я вошел в эту работу хорошо, но если я вышел из системы, то у меня ошибка:

Неустранимая ошибка: вызов функции-члена getId () для необъекта в

Я пытался:

  if ($this->getUser()->getGuardUser()->isAuthenticated()){
    $this->idsfguard = $this->getUser()->getGuardUser()->getId();
  }

но у меня ошибка:

Неустранимая ошибка: вызов функции-члена isAuthenticated () для необъекта в

1 Ответ

3 голосов
/ 02 июля 2011
if ($this->getUser()->isAuthenticated()) {
  $id = $this->getUser()->getGuardUser()->getId();
}

Метод isAuthenticated() предназначен для класса sfUser, а не sfGuardUser. Вы можете получить доступ к классу sfGuardUser только через sfUser, если пользователь аутентифицирован.

...