2010-07-04 91 views
1

嗨,大家好,我正在开发一个cakephp应用程序,用于管理alpha用户列表。这是一个简单的表单,接受名称和电子邮件,然后在提交后生成一个字母代码,然后将字母代码存储在记录中,名称和电子邮件位于列“代码”下。我使用的是组件calleed PasswordHelper位于hereCakePHP组件不工作

这里是我的代码

class AlphaUsersController extends AppController { 
    var $name = 'AlphaUsers'; 
    var $components = array('PasswordHelper'); 

    function add() { 
     if(!empty($this->data)) { 
     if($this->AlphaUser->save($this->data)){ 
      $this->AlphaUser->set('code', generatePassword(10)); 
      $this->AlphaUser->save(); 
      $this->Session->setFlash('User has been added.'); 
      $this->redirect(array('action' => 'index')); 
     } 
     } 
    } 
} 

当我不包括字母代码行的表格数据保存就好了,但是当我尝试生成密码,我得到这个错误。

致命错误:在/Users/Warren/Sites/caroverload/app/controllers/alpha_users_controller.php调用未定义功能generatepassword()上线22

这是怎么回事?我将PasswordHelper文件保存在相应的组件目录中,并将其添加到此控制器的components数组中。

回答

2

我认为你打电话给PasswordHelper方法的方式应该看起来更像这样:$this->PasswordHelper->generatePassword(10)

正如你现在所看到的那样,它正在寻找作为一个不存在的全局函数并抛出错误。

+0

+1确实至少有一个问题:-) – jdehaan 2010-07-04 15:05:37

+0

这是唯一的问题!谢谢! – wcolbert 2010-07-04 15:14:01

+0

更正:它正在寻找一个全局函数'generatePassword',而不是本地方法。 – deceze 2010-07-04 23:03:03