РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
⊗pplrSpNtDb 188 of 210 menu

Канал database уведомления в Laravel

Канал database сохраняет уведомление в таблицу notifications. На сайте из неё строят колокольчик, историю сообщений, список непрочитанных. Чтобы канал сработал, в via должен быть database.

Содержимое записи задаёт метод toArray. Он возвращает массив - Laravel сохранит его в JSON-поле. Ключи выбираете вы: заголовок, текст, id сущности, ссылка:

<?php public function toArray(object $notifiable): array { return [ 'title' => 'Invoice paid', 'body' => 'Your invoice has been paid.', 'url' => url('/invoices'), ]; } ?>

Таблица появляется миграцией уведомлений (её создают отдельной Artisan-командой, если ещё нет). Без миграции канал database упадёт с ошибкой при отправке. Проверьте, что миграция выполнена.

toArray не шлёт почту - только данные для базы. Если в via есть и mail, и database, Laravel вызовет и toMail, и toArray для одного и того же уведомления.

В WelcomeUser опишите toArray с полями для колокольчика.

Убедитесь, что в via есть database.

Что возвращает toArray и куда Laravel кладёт этот массив?

Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить