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

Php 如何在邮件中附加Laravel刀片视图,php,laravel,email,laravel-4,blade,Php,Laravel,Email,Laravel 4,Blade,我试图在发送邮件时附加刀片视图。我用的是拉威尔4。我试过这个: Mail::send( "emails.clientEmail", $data, function($message) use ($data,$template,$subject) { $message->to($data['email'], $data['name']) ->from($template['from'],$template['from_na

我试图在发送邮件时附加刀片视图。我用的是拉威尔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
在blade模板中,它不显示html,而是显示代码


我应该如何发送它并显示为html

如您所述,您可以使用
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');
        }
    );

如上所述,您可以使用
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');
        }
    );

谢谢,我现在就试试。我应该在哪里找到$filePath?它应该在哪个目录中?例如在
/{projectPath}/storage/tmp
Oh中,事实上我可以将从数据库获得的html数据作为模板发送到视图。也许这是更好的解决方案,但在这种情况下,我应该使用-attachdata('myhtml here','name');。。。当然,也可以将数据库中的数据作为
$renderData
的格式,您现在就可以尝试了。:)谢谢,汉克斯,我现在就试试。我应该在哪里找到$filePath?它应该在哪个目录中?例如在
/{projectPath}/storage/tmp
Oh中,事实上我可以将从数据库获得的html数据作为模板发送到视图。也许这是更好的解决方案,但在这种情况下,我应该使用-attachdata('myhtml here','name');。。。当然,也可以将数据库中的数据作为
$renderData
的格式,您现在就可以尝试了。:)谢谢