#laravel
#laravel
Вопрос:
Как создать вложение для внешнего файла в laravel mail?
Мое хранилище находится на S3, и я хочу прикрепить его к своей почте laravel.
Mail::send('emails.mail', $ddd, function($message) use ($compose_to, $compose_cc, $compose_bcc, $title, $subject, $bill) {
$message->to(explode(',', $compose_to));
isset($compose_cc) ? $message->cc(explode(',', $compose_cc)) : '';
isset($compose_bcc) ? $message->bcc(explode(',', $compose_bcc)) : '';
foreach($bill->files as $bb){
$message-> attachFromStorageDisk('s3', 'snap/brief/'.$bb->filename);
}
$message->subject($subject);
$message->from('hello@b166er.co', env('APP_NAME'));
});
Как я могу это сделать?
Ответ №1:
Пожалуйста, дайте мне знать, это письмо с уценкой? также, пожалуйста, укажите версию laravel.
Вы можете следовать приведенному ниже коду и заменить путь к файлу соответствующим путем.
Mail::send('emails.mail', $ddd, function($message) use ($compose_to, $compose_cc, $compose_bcc, $title, $subject, $bill) {
$message->to(explode(',', $compose_to));
isset($compose_cc) ? $message->cc(explode(',', $compose_cc)) : '';
isset($compose_bcc) ? $message->bcc(explode(',', $compose_bcc)) : '';
foreach($bill->files as $bb){
$message->attach(Storage::disk('s3')->url('snap/brief/'.$bb->filename));
}
$message->subject($subject);
$message->from('hello@b166er.co', env('APP_NAME'));
});
Комментарии:
1. Я редактирую свой код выше. он возвращает неверный метод для attachfromstroagedisk
2. Вас не хватает
/
/ там$message-> attachFromStorageDisk('s3', '/snap/brief/'.$bb->filename);
я добавил его, попробуйте3. @TCS Я обновил свой ответ, поскольку вы обновили свой вопрос. Это решение работает для меня, вам просто нужно убедиться, правильный ли путь к файлу или нет.