CakeEmail,调试级别为0

时间:2012-03-05 15:13:50

标签: cakephp cakephp-2.0

我正在尝试通过CakeEmail发送电子邮件,它在调试级别为2时都可以工作但是只要我将其切换到调试级别0它就会停止工作并且在访问页面时出现服务器错误。我检查了日志,这就是我得到的:

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('my@email.com' => 'My Company'))
    ->to('my@email.com')
    ->subject('Your new password')
    ->send();

之前我使用过类似的代码,但是不记得我是否尝试过调试级别为0。

谢谢,

1 个答案:

答案 0 :(得分:5)

确保控制器中有uses子句:

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

另外,请确保以两种方式之一选择配置:

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

//or in constructor::
$email = new CakeEmail('default');