ジョブキューに画像を埋め込むのに奇妙な問題があります。
私は開発のためにWAMPを使用しています。私のプロジェクトのための フォルダ構造は はC:\ WAMP \ MyProjectの &パブリックディレクトリが Cにある:\ WAMP \ WWW \アプリLaravel、ジョブキューに画像を埋め込む問題
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">
これはうまく動いていますが、ドライバを 'sync'から 'database'に変更し、メール機能を以下のように更新すると、
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']);
});
上記を実行すると、私のジョブテーブルにデータエントリが表示されます。 私は、コマンドを実行するとき:ストリームをオープンに失敗しました:そのようなファイルやディレクトリ
これは、[エラー例外]のfopen(資産/画像/ logo.pngが)
はありません例外としてスロー
php artisan queue:work
を
イメージを削除すると、チャームとして機能します。 今私はそれが画像を見つけることができない理由ジョブキューを使用しないで、それは画像に&がメールに埋め込まれて見つけることができますかと思っています。 必要に応じて動作するはずです。
これに関するお手伝いをいたします。
<img src="{{ $message->embed(asset('images/logo.png'))}}" alt='MyProject' data-default="placeholder" data-max-width="300">
asset()
へ
それはあなたのパスが相対的であるので..私はおそらく – Jaimin
を推測許可の問題です。参照:http://stackoverflow.com/questions/36577020/failed-to-open-stream-no-such-file-or-directory –