Laravel Mail视图未返回传递的数据

时间:2018-02-19 22:46:40

标签: laravel laravel-blade

我正在尝试使用Laravel默认邮件门面发送电子邮件: -

Mail::to($user->email)->send(New NotifyUserExpiring($diff,$Sub->user));

在Mail \ NotifyUserExpiring中: -

<?php

namespace App\Mail;

use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Contracts\Queue\ShouldQueue;

class NotifyUserExpiring extends Mailable
{
    use Queueable, SerializesModels;

    /**
     * Create a new message instance.
     *
     * @return void
     */
     protected $user;
     protected $diff;
    public function __construct($diff,$user)
    {
        $this->user = $user;
        $this->diff = $diff;
    }

    /**
     * Build the message.
     *
     * @return $this
     */
    public function build()
    {
        return $this->view('web.mail.NotifyUserExpiring')->with('user',$this->user)->with('diff',$this->diff);
    }
}

在web.mail.NotifyUserExpiring中查看文件我使用的是刀片打印变量的方式: -

Hello {{ $user->first_name }}
Message Here

当我查看我的邮件收件箱时,我正在收到确切{{$ user-&gt; first_name}}

的电子邮件
  

您好{{$ user-&gt; first_name}}       消息在这里   我希望当我在邮件视图文件中插入{{$ user-&gt; first_name}}时,它应返回用户名。

<div>
    Hello {{ $user->first_name }}

    Message body test
</div>

1 个答案:

答案 0 :(得分:3)

确保您的邮件视图文件名后缀为.blade.php,以便它通过Blade渲染引擎。