html - 如何向多个选定的用户发送邮件

标签 html css arrays laravel-5

我有一个 session 表,我在其中存储 session 信息,并且可以在两种类型的用户访客类型用户和主持人类型用户之间选择 session 。我在用户和 session 之间存在多对多关系,这就是为什么我有一个数据透视表 meeting_user。我需要为一次 session 向所有选定的用户发送邮件。

我正在尝试使用它发送电子邮件,但它将 meeting_id 存储到数据库的 notifiable_id 列中。那么如何将 users_id 存储在数据库的 notifiable_id 列中。

$meetings->save();

    $meetings->users()->attach($request->user_id);

    $users = Meeting::with('users')->get();
\Mail::to($user->send(New NewMeeting($meetings('id')));

最佳答案

有两种情况可以向参加 session 的用户发送电子邮件:

  1. 当用户被添加到 session 中时
  2. 当提醒所有用户(批量)他们已被添加到 session 时。

向刚刚添加的用户发送邮件时

如果您想在添加后向用户发送电子邮件,您可以执行以下操作:

...

$meeting = Meeting::find($meeting_id);

$user = User::find($request->user_id);

$meeting->users()->attach($user->id);

\Notification::send($user, new NewMeetingNotification($user));

这将添加到代码中,将一个用户添加到 session 中,而不是多个用户。

同时向 session 中的所有用户发送电子邮件时

如果您想批量向用户发送电子邮件,添加所有用户后,您可以执行以下操作。

...

$meeting = Meeting::with('users')->where('id', $meeting_id)->first();

$meeting->users()->each(function ($user, $key) {
    \Notification::send($user, new NewMeetingNotification($user));
});

$meeting_id 是相关 session 。

通知用户(可选)

如果 user 模型有 notifiable trait,你可以把代码改成:

...

$meeting = Meeting::with('users')->where('id', $meeting_id)->first();

$meeting->users()->each(function ($user, $key) {
    $user->notify(new NewMeetingNotification($user));
});

希望对您有所帮助。

关于html - 如何向多个选定的用户发送邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52312713/

相关文章:

php - MySQL 数据库/PHP - 从脚本生成 100 个联系人

html - 导航栏下的空白区域,只有在下一节的标题中添加边框时才会消失

html - 如何在不创建不必要的空白区域的情况下插入弹出模式?

CSS:将 block 元素居中时创建不等边距

ios - 如何转换 Dictionary<String, Any>.Values?进入字符串数组 SWIFT

java - 不使用 if else 或三元运算符的三个数字中的第二大数字。使用最大和最小函数

javascript - 隐藏包含特定文本的元素

javascript - javascript、xsl、xhtml 和 css 的编辑器,除了 aptana 或 xcode?

javascript - 为什么设置 scrollTop 无法设置正确的位置?

ios - 在 Swift 中使用 arc4random_uniform 从数组中提取随机字符串