Laravel队列在后台不工作

问题描述

我正在尝试使用laravel队列发送批量电子邮件。到目前为止,我已经写下了逻辑并且可以正常工作,但是问题是,当我在控制器中编写逻辑时,这花费了很多时间,所以我考虑使用作业,但是问题仍然存在。

我的问题

我的问题是即使使用队列,我也无法在后台发送电子邮件。

控制器

    public function newsletter(Request $request)
    {
        //dd($request->all());
        dispatch(new SendEmail($request));

        Session::flash('message','Email Sent');
        Session::flash('class','success');
        return redirect()->route('news');
    }

工作

    public function handle(Request $request)
    {
        //
        $data = array(
            'message' => $request->message,'subject' => $request->subject,'file' => $request->file("file")
        );
        
        $teachingLevel = $request->highest_teaching_level;
        $school = $request->school;
        $province = $request->province;
        $district = $request->district;

        $subject = $request->subject;

        if ($teachingLevel != "" && $school != "" && $province != "" && $district != "") {
            $email = User::where('highest_teaching_level',$teachingLevel)->where('current_school_name',$school)->where('address','LIKE','%'.$province.'%')->where('address','%'.$district.'%')->pluck('email');
        }else{
        $email = User::pluck('email');
        }
        
        foreach($email as $e)
        {
            Mail::to($e)->send(new NewsLetter($data,$subject));
        }
    }

电子邮件已发送,但不会在后台发生。也许与我在$request函数中传递handle()变量的方式有关。

任何帮助将不胜感激。谢谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)