有人可以帮助我理解这一点。
AuthComponent::user()
方法只返回有关用户的一些基本信息,而不是实际的User对象本身。
来自rails,我习惯了一个满载的current_user
对象
如果我想要类似的东西,我应该做一个
$this->User->id = AuthComponent::user('id')
并使用它?或者是否已经有我可以使用的内置方法。
提前致谢。
答案 0 :(得分:2)
如果您在链接文档中向下滚动一下,您将看到从CakePHP 2.2开始,您现在可以在Auth设置中使用Containable
,因此您可以执行以下操作:
public $components = array(
'Auth' => array(
'authenticate' => array(
'Form' => array(
'fields' => array('username' => 'email'),
'contain' => array('RelatedModel', 'RelatedModel')
)
)
)
);
答案 1 :(得分:0)
我最终做了类似这样的事情
# load current_user
$this->loadModel('User');
$this->User->id = AuthComponent::user('id');
$user = $this->User->read();
$this->set('current_user',$user);