2010-07-04 69 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