cakephp 在组件中使用控制器
Posted
技术标签:
【中文标题】cakephp 在组件中使用控制器【英文标题】:cakephp use controllers in components 【发布时间】:2013-08-20 05:24:58 【问题描述】:我正在尝试使用一个通用函数来检查用户是否已经创建了一个帐户。以下代码适用于控制器级别。但我必须将相同的代码复制到所有其他控制器。所以我计划创建一个组件并将通用功能放在那里。
public function is_user_has_account()
$has_account = $this->Account->find('all', array(
'fields'=>array('id'),
'conditions'=>array('user_id'=>$this->Auth->user('id')), 'limit' => 1));
if($has_account)
return TRUE;
else
return FALSE;
当我将代码放入自定义组件时,它不起作用。在组件中使用控制器功能的最佳方式是什么?我正在使用 cakephp 1.3
谢谢
【问题讨论】:
it did not work
- 以什么方式?
【参考方案1】:
我认为将这个功能转移到一个组件是多余的(另外你可以简化代码)。相反,我会将其移至您的 Account
模型:
public function is_user_has_account($userID)
return $this->hasAny(array('user_id' => $userID));
或您的AppController
:
public function is_user_has_account()
return $this->Account->hasAny(array('user_id' => $this->Auth->user('id')));
【讨论】:
以上是关于cakephp 在组件中使用控制器的主要内容,如果未能解决你的问题,请参考以下文章