我正在努力让我正在开发的网站发送密码提醒电子邮件。我曾想过使用我的Gmail帐户进行测试。从Cake cookbook,我有这个代码:
$this->Email->from = 'support@site.com';
$this->Email->smtpOptions = array(
'port'=>'465',
'timeout'=>'30',
'host' => 'ssl://smtp.gmail.com',
'username'=>'notmyrealemail@gmail.com',
'password'=>'notmyrealpassword');
$this->Email->delivery = 'smtp';
$this->Email->from = 'support@imgstore.in';
$this->Email->to = $this->request->data['User']['email'];
$this->Email->subject = 'Your account reset request';
$this->Email->send('testing');
$this->Email->send();
debug($this->Email->smtpError);
但是,当执行此代码时,我发现了这个错误:
Error: Call to a member function messageID() on a non-object
File: C:\xampp\htdocs\site\lib\Cake\Controller\Component\EmailComponent.php
Line: 312
Notice: If you want to customize this error message, create app\View\Errors\fatal_error.ctp
我在这里做错了什么?目前我只想测试我的应用程序是否可以正常发送电子邮件。但是,Gmail是一种在生产中向我的用户发送电子邮件的好方法吗?
感谢。
答案 0 :(得分:0)
它似乎是你没有将组件类包含到控制器中。将EmailComponent
包含在控制器文件中。
public $components = array('Email');