从Laravel 4发送邮件时使用子视图

时间:2013-04-03 07:45:01

标签: email laravel subview laravel-4

从Laravel 4发送邮件时有没有办法使用嵌套视图?

你发送这样的邮件:

Mail::send('emails.welcome', $data, function($m)
{
    $m->to('foo@example.com', 'John Smith')->subject('Welcome!');
});

然后你创建一个像这样的子视图:

$view = View::make('greeting')->nest('child', 'child.view', $data);

所以你认为你可以将视图传递给发送邮件方法,如下所示:

$view = View::make('emails.welcome')->nest('child', 'child.view', $data);
Mail::send($view, $data, function($m)
{
    $m->to('foo@example.com', 'John Smith')->subject('Welcome!');
});

但是从查看邮件类看来,send方法的第一个参数似乎需要是一个字符串,并根据它为你构成视图。谁能想到解决这个问题的方法呢?

1 个答案:

答案 0 :(得分:2)

如何将子视图作为数据传递到主视图?这几乎是nest()为你做的......

$child = View::make('child.view', $data);
$data['child'] = $child;
Mail::send('emails.welcome', $data, function($m) use ($user)
{
    $m->to($user->email, $user->name)->subject('Welcome!');
});