在我的控制器中,我使用的电子邮件功能包含以下代码:
public function email($mail = null){
$email = new CakeEmail('default');
$email->config('default');
$email->from(array('test@test.com' => 'testing'));
$email->to('$mail');
$email->subject('Approved');
$email->send('Approved');
在顶部我有
App::uses('AppController', 'Controller', 'CakeEmail', 'Network/Email');
但是,我收到错误致命错误:在'。
中找不到类'CakeEmail'我不确定我哪里出错了。有人可以帮忙吗?
答案 0 :(得分:36)
您需要更改App :: uses并将两者分开:
App::uses('AppController', 'Controller');
App::uses('CakeEmail', 'Network/Email');
答案 1 :(得分:5)
App::uses()
只允许两个参数:$className
和$location
。你传递了4个参数,这就是为什么没有加载CakeEmail。
有关详细信息,请参阅http://api20.cakephp.org/class/app#method-Appuses和http://book.cakephp.org/2.0/en/core-utility-libraries/app.html#App::uses
答案 2 :(得分:2)
文档很清楚: http://book.cakephp.org/2.0/en/core-utility-libraries/email.html?highlight=cakeemail#CakeEmail
“首先,你应该确保加载课程”
第二次看:你的app :: uses()是错误的。查看记录方式。
答案 3 :(得分:1)
您可以使用控制器中的电子邮件组件
public $components = array('Email');
public function email(){
$this->Email->to = 'yourmail@mail.com';
$this->Email->subject = 'Subject - ';
$this->Email->from = 'sender@mail.com';
$this->Email->send('message');
}