我正在使用mandrill进行laravel项目。
我可以通过添加以下代码
在控制器中发送测试电子邮件$payload = array(
'message' => array(
'subject' => 'Transactional email via Mandrill',
'html' => 'It works!',
'from_email' => 'fromemail@example.com',
'to' => array(array('email'=>'kwanghock@kwanghock.com.sg'))
)
);
$response = Mandrill::request('messages/send', $payload);
然而,当我将这块代码移到库中时,它给了我一个
Symfony \ Component \ Debug \ Exception \ FatalErrorException
Class 'Project\Email\Mandrill_lib\Mandrill' not found
我正在使用https://github.com/doxxon/Laravel-Mandrill-Request
中的包我的图书馆代码如下
<?php namespace Project\Email\Mandrill_lib;
use LaravelMandrillRequest\Facades\LaravelMandrillRequestServiceProvider;
use LaravelMandrillRequest\Facades\MandrillRequest;
class MandrillEmail implements MandrillInterface {
public function send($emails)
{
foreach($emails as $email)
{
$payload = array(
'message' => array(
'subject' => 'Transactional email via Mandrill',
'html' => 'It works!',
'from_email' => 'fromemail@example.com',
'to' => array(array('email'=>'kwanghock@kwanghock.com.sg'))
)
);
$response = Mandrill::request('messages/send', $payload);
}
}
}
答案 0 :(得分:1)
你必须user
Mandrill:
use LaravelMandrillRequest\Facades\LaravelMandrillRequestServiceProvider;
use LaravelMandrillRequest\Facades\MandrillRequest;
use Mandrill; /// here!
class MandrillEmail implements MandrillInterface {
...
}
或者它将尝试通过您自己的命名空间
使用它Class 'Project\Email\Mandrill_lib\Mandrill' not found
答案 1 :(得分:0)
因此,它没有被正确引用或者没有被作曲家重新认识。 首先检查composer.json文件并检查是否已将路径或命名空间设置为新的库结构(相对于默认应用程序文件夹的新增内容)。然后做一个作曲家dumpautoload。请注意,app中的控制器默认为命名空间。