2

3 我在发送邮件时遇到错误。下面我提到了我的代码。

在控制器文件中 var $components = array('RequestHandler', 'Filter','Image','Email','Captcha','RandomHelper');

然后在我的函数中我写了 $this->Email->from = $from;

$this->Email->subject = 'Approval Form: ';


$this->Email->delivery = 'debug';


$this->Email->template = 'adminemail';


$this->Email->sendAs = 'html';


$this->Email->send();

我不想使用 SMTP 发送邮件。当我运行此代码时,错误是缺少帮助文件,它告诉我“错误:无法找到或不存在帮助文件 app/views/helpers/email.php。” 任何人都可以帮助我

4

2 回答 2

0

电子邮件不是助手,它是 1.3 中的一个组件,在 2.0 中有 CakeEmail

您不在组件属性中加载帮助程序,请使用 public $helpers = array('MyHelper');

Helpers 在 $helpers 属性中加载时没有“Helper”后缀。

看起来您不知道 MVC 是什么,也不知道帮助程序和组件之间的区别是什么。我建议您阅读有关 MVC 和 CakePHPs 不同部分的信息,例如组件和助手之间的区别以及行为之间的区别。

于 2012-05-28T13:57:48.027 回答
0

如果您使用的是这个版本的 CakePHP,请参考关于CakeMail的 CakePHP 2.x 文档或关于电子邮件核心组件的 CakePHP 1.3 文档。

(Cake)Email 从来都不是 Helper,HelperViews的,ComponentControllers的,BehaviorModels的。

它们允许您将部分逻辑外部化以在其他地方重用它。

Views中,您还可以将Elements用于您经常使用的元素。

于 2012-05-28T14:17:39.750 回答