Laravel Mailables - 发送集合到视图

时间:2017-05-01 17:05:21

标签: php laravel laravel-5.4

我正在使用Laravel 5.4 Mailables,无法将数据从我的集合传递到视图。

我收集了$users

[
  0 => {
    "name": "Justin",
    "email": "justin@test.com",
    "passwordExpires": "7 days"
  }
  1 => {
    "name": "Max",
    "email": "max@test.com",
    "passwordExpires": "2 days"
  }   
]

使用一组用户调用mailable:

 Mail::to($users)->send(new PasswordExpiring());

但是PasswordExpiring()无法访问当前正在通过电子邮件发送的用户。我可以在构造函数中传递所有用户,但我无法知道哪个Mail正在尝试发送。

如何将当前用户数据传递到我的mailable视图?

1 个答案:

答案 0 :(得分:1)

我刚添加了一个for循环并一次发送一封电子邮件。

$users = $this->repo->getExpiring();

foreach ($users as $user)
{
    $mail_user = $this->transform($user);
    Mail::to($mail_user)->send(new PasswordExpiring($mail_user));
}