1

ジョブ キューに画像を埋め込む際に奇妙な問題があります。
開発にはWAMPを使用しています。私のプロジェクトのフォルダー構造は C:\wamp\MyProject で、パブリック ディレクトリは C:\wamp\www\appにあります

Mail::send('emails.mailtemplate_rule', ['body' => $data['body']], function ($message) use ($data) {
    $message->to($data['to']);
    $message->from($data['from'], $data['namefrom']);
    $message->subject($data['subject']);
});

<img src="{{ $message->embed('assets/images/logo.png')}}" alt='MyProject' data-default="placeholder" data-max-width="300">

これを実行すると正常に動作しますが、ドライバーを「同期」から「データベース」に変更し、メール機能を次のように更新すると、次のようになります。

Mail::queue('emails.mailtemplate_template', ['body' => $data['body']], function ($message) use ($data) {
    $message->to($data['to']);
    $message->from($data['from'], $data['namefrom']);
    $message->subject($data['subject']);
});

上記を実行すると、ジョブ テーブルにデータ エントリが表示されます。しかし、コマンドを実行すると: php artisan queue:work 例外としてスローされます

[エラー例外]
fopen(assets/images/logo.png): ストリームを開けませんでした: そのようなファイルやディレクトリはありません

画像を削除すると、チャームとして機能します。ジョブキューを使用せずに画像を見つけてメールに埋め込むことができるのに、なぜ画像を見つけることができないのか疑問に思っています。希望どおりに動作するはずです。
これに対する任意の助けをいただければ幸いです。

4

1 に答える 1