0
我有一個role
字段給我真正需要訪問的用戶。如果用戶是admin
,他們在我的許多觀點上會有額外的可用操作。如何強制在AuthComponent的用戶中包含一個字段?
所以,在我AppController
的beforeRender
我這樣做:
$this->set('loggedInUser', $this->Auth->user());
這樣一來,我可以使用$loggedInUser
訪問我所有的意見,用戶登錄。
的事情是,從10個字段的表users
具有的AuthComponent
似乎只獲取這些4:id
,username
,verified
和modified
。
我在我的代碼中找不到指定這4個字段爲整體的任何地方。
什麼導致AuthComponent
隨機選擇那些特定字段?我如何強制我需要的領域?
的情況下,額外的信息,則需要:
所有的users
表的字段有:
id
username
email
password
role
verification_hash
email_md5
verified
created
modified
的AuthComponent
我AppController
內的初始化如下:
$this->loadComponent(
'Auth',
[
'authorize' => 'Controller',
'authError' => 'You are not allowed to go there',
'authenticate' => [
'Form' => [
'fields' => [
'username' => 'username',
'email' => 'email',
'password' => 'password'
]
]
],
'loginAction' => [
'controller' => 'Pages',
'action' => 'display',
'home'
]
]
);
這是不正確的,默認情況下,AuthComponent將獲取所有字段。另外,在你的配置的'fields'鍵中'email'鍵不是必需的。 –
@JoséLorenzo,謝謝,你知道是什麼原因導致AuthComponent只提取那些特定的字段嗎? – hakermania
您的實體中是否有'$ _hiddenFields'中的任何內容? –