2011-10-21 58 views
0

我有一段代碼,負責我的控制器分頁:CakePHP的使用會話功能外

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

所以,在這裏我有'Tanque.user_id' => 1,我想用user_id代替號碼1。我從$this->Session->read('Auth.User.id')會話獲得user_id,但是出現錯誤。

如何使用$this->Session->read以外的功能?

回答

1

你不能在類聲明中使用表達式,你只能使用靜態值。更何況所有的組件在這個階段都沒有加載。在功能上做到這一點,如beforeFilter

public function beforeFilter() { 
    $this->paginate['conditions']['Tanque.user_id'] = $this->Auth->user('id'); 
    parent::beforeFilter(); 
} 
+0

太棒了!非常感謝你的男人。這太棒了!!! –