С функцией уведомления Laravel 5.3, я вижу, что уведомления отправляются пользователям, как это:Laravel 5,3 Отправить Уведомление для пользователей без учета
$user->notify(new InvoicePaid($invoice));
Где я считаю, $user
является регистрируемым лицом. Что делать, если я хочу отправлять уведомления пользователям, у которых еще нет учетной записи? В моем приложении пользователи отправляют приглашение своим друзьям для присоединения. Я пытаюсь использовать уведомление Laravel для отправки кода приглашения пользователям, у которых еще нет учетной записи.
Когда пользователи пригласить кого-то, их данные хранятся в Пригласить модели, как это:
class Invite extends Model
{
protected $table = 'invites';
protected $fillable = array('name', 'email', 'invite_code', 'expires_at', 'invited_by');
protected $dates = ['expires_at'];
}
Я думал, что я могу использовать оповещать для отправки уведомлений модели Invite, как это:
$invite = Invite::find($inviteId);
$invite->notify(new InvitationNotification(ucfirst($invite->name), $invite->invite_code, $invite->expires_at));
Но выше не работает. Я получаю ошибку:
Call to undefined method Illuminate\Database\Query\Builder::notify()
Так что мой вопрос:
Умеет отправить уведомление только пользователь модель?
Есть ли способ отправки Уведомления пользователям, у которых еще нет учетной записи ?
Является ли мой единственный выбор использовать класс Mailable Laravel вместо Notification в этих случаях?
Perfect. Это именно то, к чему я застрял, и поскольку я не нашел решения, я в конечном итоге переписал эти уведомления в почтовые рассылки. Благодарим вас за сообщение вашего ответа. Теперь я добавлю это в свое приложение и использую уведомления вместо почтовых. Большое вам спасибо. – Neel