如何在邮件中附加Laravel刀片视图

时间:2016-05-28 11:53:21

标签: php laravel email laravel-4 blade

我正在尝试在发送邮件时附加刀片视图。我正在使用Laravel 4.我试过这个:

Mail::send(
    "emails.clientEmail",
    $data,
    function($message) use ($data,$template,$subject) {
        $message->to($data['email'], $data['name'])
            ->from($template['from'],$template['from_name'])
            ->subject($subject)
            ->attach(app_path().'/views/email.blade.php');
    }
);

但是我的视图email.blade.php位于刀片模板中,它不显示html而是显示代码。

我应该如何发送并显示为HTML?

1 个答案:

答案 0 :(得分:2)

正如您所提到的,您可以使用attachData并添加渲染数据,如:

$renderedData = view('email')->render();

Mail::send(
        "emails.clientEail",
        $data,
        function($message) use ($data,$template,$subject) {
            $message->to($data['email'], $data['name'])
                ->from($template['from'],$template['from_name'])
                ->subject($subject)
                ->attachData($renderedData, 'name_of_attachment');
        }
    );