0
我需要发送提醒邮件的用户在排队Laravel 5.3发送电子邮件提醒给多个用户的队列
目前我有
UserController.php
public function postSendUsersPaymentRequest(Request $request){
$users_ids = $request->get('user_checked');
dispatch(new SendPaymentRequestEmail($users_ids));
return response()->json(['code' => 200], 200);
}
\ APP \作业\ SendPaymentRequestEmail .php
public function handle(UserRepository $userRepo)
{
$users = $userRepo->getUserInfoDetails(3,1,1)->whereIn('user_id',$this->users_ids);
foreach($users as $user){
$this->emailPaymentRequest($user);
}
}
private function emailPaymentRequest($user){
Mail::queue($this->email_vew, ['user' => $user], function ($m) use ($user) {
$from = Config::get('mail.from');
$project_name = Config::get('app.project_name');
$m->from('fromemail', $project_name);
$m->to('toemail', $user->name)->subject('Payment Request');
});
}
但是电子邮件发送时没有排队。
感谢您提前提供任何帮助。
“.env”文件中的'QUEUE_DRIVER'是什么?另外,在'config/queue.php'中你的'queue'的名字是什么? – prateekkathal
将您的队列驱动程序设置为数据库,并使用队列的作业表迁移数据库。如果驱动程序是同步的,那么它将直接发送邮件而不用等待 –
是的,我解决了。 QUEUE_DRIVER是.env中的文件,但我使用数据库作为驱动程序。 – vijay