【发布时间】:2024-04-22 14:10:02
【问题描述】:
我遇到了一个问题,我正在尝试排队发送消息以发送给注册用户,当我运行一切正常时,但队列无法正常工作,有人可以帮我解决这个问题吗? 这是注册控制器
protected function create(array $data)
{
$user = User::create([
'name' => $data['name'],
'email' => $data['email'],
'password' => Hash::make($data['password']),
'type' => $data['type'],
]);
$email = (string)$data['email'];
$job = (new SendEmailJob($email))->delay(Carbon::now()->addSeconds(5));
dispatch($job);
return $user;
}
我检查了我是否可以发送电子邮件并且它可以发送电子邮件,但是当我指向特定电子邮件而不是来自注册表单的数据时。 这是 SendEmailJob
public function handle($user)
{
Mail::to($user)->send(new SendEmailMailable());
}
【问题讨论】:
-
您有正在运行的队列吗?您可以使用 'php artisan queue:work' 执行此操作,看看是否有帮助。
-
哦哇我应该跑那个?我以为队列会自己运行
-
@techcyclist 将其作为答案发布,以便我可以选择您的作为正确答案
-
会的,很高兴它有帮助