2012-03-05 4 views
0

私はCakeEmailで電子メールを送信しようとしていますが、デバッグレベルが2の場合はすべて動作しますが、デバッグレベル0に切り替えるとすぐに機能が停止し、ページにアクセスする。私は、ログをチェックして、これは私が得るものです:デバッグレベル0のCakeEmail

PHP Fatal error: Call to a member function subject() on a non-object

これは私が使用しているコードです:

$email = new CakeEmail(); 
$email->template('forgot_password', 'default') 
    ->emailFormat('html') 
    ->viewVars(array('password' => $password)) 
    ->from(array('[email protected].com' => 'My Company')) 
    ->to('[email protected]') 
    ->subject('Your new password') 
    ->send(); 

私は前に類似したコードを使用しましたが、覚えていないことができます私は0

おかげで、

+0

は 'viewVars'と' emailFormat'を連鎖することなく、それを試してみてください - マニュアルでは、*特別*これらのメソッドを言っていません。連鎖可能である。しかし、ちょうど提案 – Ross

答えて

5

のデバッグレベルでそれをしようとした場合は、あなたがコントローラでのuses節があることを確認してください:

をまた
App::uses('CakeEmail', 'Network/Email'); 

、次の2つの方法のいずれかで設定を選択している特定ます

$email = new CakeEmail(); 
$email->config('default'); 

//or in constructor:: 
$email = new CakeEmail('default'); 
関連する問題