创建了一个shell类,EmailShell将呈现给定电子邮件模板的html并将其传递给Mandrill Api服务。
App::uses('View', 'Core');
class EmailShell extends AppShell {
function startup() {
parent::startup();
$useDbConfig = 'default';
}
function new_user_created(){
$html = $this->getEmailTemplateHtml('new_user');
$post_fields['message'] = array(
"html" => $html,
"text" => strip_tags($html),
"from_email" => "from@example.com",
"subject" => "subject goes here.",
"to" => "to@example.com"
);
$Mandril = ClassRegistry::init("Mandril");
$Mandril->sendEmail($post_fields);
}
private function getEmailTemplateHtml($template, $layout = 'default', $custom_data = false){
$v = new View();
$v->set("data", $custom_data);
return $v->render('Emails/'.$template, $layout);
}
}
现在执行shell命令
$>蛋糕邮件new_user_created
它正在返回我的错误信息。
* PHP致命错误:在第22行的C:\ wamp \ www \ cakephp_application \ app \ Console \ Command \ EmailShell.php中找不到类“查看”*
如何获取我的电子邮件模板的HTML,以便将其传递给Mandril服务?
答案 0 :(得分:0)
问题是View
位于View
文件夹中,没有Core文件夹。
你会想要使用。
App::uses('View', 'View');