CakePHP использует сессию вне функции - PullRequest
0 голосов
/ 21 октября 2011

У меня есть фрагмент кода, который отвечает за разбиение на страницы в моих контроллерах:

var $paginate = array(
            'limit' => 5,
            'conditions' => array('Tanque.user_id' => 1),
            'order' => array(
            'Tanque.nome' => 'asc'
        )
    );

Итак, где у меня есть 'Tanque.user_id' => 1, я хотел бы использовать user_id вместо числа1.Я получаю user_id из сеанса $this->Session->read('Auth.User.id'), но получаю ошибку.

Как я могу использовать $this->Session->read вне функций?

1 Ответ

1 голос
/ 21 октября 2011

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

public function beforeFilter() {
    $this->paginate['conditions']['Tanque.user_id'] = $this->Auth->user('id');
    parent::beforeFilter();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...