当我尝试调用Laravel的Mail:send方法时,我得到这个错误。
{"errors":[{"message":"Internal Server Error",
"debug":{"code":1,"message":"Class 'MyMail''Mail' not found",..
app/config/mail.php中的所有设置已被验证为正常工作。
namespace MyMail;
class GetMyMail extends Controller
{
public function __construct()
{
parent::__construct();
}
public function sendMail()
{
//$json_data is data stored in json
$users = json_decode($json_data, true);
foreach($users as $user)
{
Mail::send('template1', $user, function($message) use ($user)
{
$message->to($user['email'], $user['first_name'])
->subject('Laravel Email Test');
});
}
}
}
由于代码位于名称空间下,因此必须导入Mail facade(我猜您只是忘记了这一点):
namespace MyMail;
use Mail;
class GetMyMail extends Controller
{
// your code
}
或者,如果你喜欢,你可以在前面加上一个反斜杠:
'Mail::send('template1', $user, function($message) use ($user)
{
$message->to($user['email'], $user['first_name'])->subject('Laravel Email Test');
});
您忘记包含邮件类了。
添加use Mail;
我不知道为什么没有人回答这个问题,但我肯定他们只是忘记了:
'Mail::send();
注意"Mail"前的"'"。