Файлы Laravel Job Mail не смогли открыть файл - PullRequest
0 голосов
/ 24 августа 2018

Я хотел добавить работу, чтобы отправить письмо на большой список адресов; но я получаю исключение

Swift_IoException: невозможно открыть файл для чтения

Метод I работал без заданий, но теперь, когда я использую диспетчерское задание с базой данных, я получаю эту ошибку. кто-то знает, почему я получаю исключение?

Когда я использую это непосредственно в контроллере, приложение работает:

if($request->uploads){

            foreach($request->uploads as $file) {
                $files[] = [
                    'file' => $file->getRealPath(),
                    'options' => [
                        'mime' => $file->getClientMimeType(),
                        'as'    => $file->getClientOriginalName()
                    ],
                ];
            }

        }else{

            $files = null;

        }

    Mail::to($emails)->send(new MassiveEmail($subject , $bodyMessage , $files));

Но когда я использую это, это не работает:

$job = (new SendEmailMassiveJob($emails , $subject , $bodyMessage , $files))
            ->delay(Carbon::now()->addSeconds(10));

        dispatch($job);

Вот мой класс работы:

public function handle()
    {

        $emails = $this->emails;
        $subject = $this->subject;
        $bodyMessage = $this->bodyMessage;
        $files = $this->files;

        foreach ($emails as $email){

            Mail::to($email)->send(new MassiveEmail($subject , $bodyMessage , $files));

        }
    }

Вот мой класс почты, который выдает ошибку, когда я прикрепляю файлы:

public function build()
    {

        $subject = $this->subject;
        $bodyMessage = $this->bodyMessage;
        $files = $this->files;

        $email =  $this->markdown('email.MassiveMail',compact('bodyMessage'))
            ->subject($subject.'-'.'FFRXIII Licences & Compétitions');

        if($files){

            foreach($files as $file) {
                $email->attach($file['file'],$file['options']);
            }

        }

        return $email;
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...