Существует ли простой способ получить пользовательские данные AuthComponent из представления в CakePHP?

Решение состоит в том, чтобы установить прокси на «родной», как показано ниже

Перейдите в «Окно-> Настройки -> Общие -> Сетевое подключение» и измените настройки «Активный поставщик -> Собственный». Это сработало для меня.

7
задан Community 23 May 2017 в 10:29
поделиться

4 ответа

На самом деле эту информацию легко получить из сеанса. Вы используете помощник сеанса, чтобы захватить его. Я считаю, что правильный синтаксис:

$userdata = $session->read('Auth.User');
$username = $session->read('Auth.User.username');

РЕДАКТИРОВАТЬ:

Для CakePHP 2.X и по синтаксису:

$userdata = $this->session->read('Auth.User');
$username = $this->session->read('Auth.User.username');
12
ответ дан 6 December 2019 в 11:52
поделиться

Добавьте метод в свой AppController

function beforeFilter() {
$ath = $this->Auth->user();
$this->set('userDetails', $ath['User']);
}

И затем вы можете получить к нему доступ из ваших представлений и / или макетов через $ userDetails

2
ответ дан 6 December 2019 в 11:52
поделиться

Посмотрите AuthComponent-Methods в руководстве CakePHP ....

Вы можете получить доступ к информации о пользователе после того, как пользователь вошел в систему из сеанса через $ this-> Auth-> User (). Поэтому, если вам нужно имя пользователя, просто используйте его в контроллере.

$ this-> set ('username', $ this-> Auth-> User ('username'));

Теперь вы можете использовать $ имя пользователя в представлении.

3
ответ дан 6 December 2019 в 11:52
поделиться

Чтобы получить доступ к переменным аутентификации в представлениях, просто сделайте это:

echo $session->read('Auth.User.id');
0
ответ дан 6 December 2019 в 11:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: