Marcar notificaciones como leídas en Laravel
Comprar curso

17. Marcar notificaciones como leídas en Laravel

En este capítulo, aprenderás a marcar las notificaciones como leídas cuando un usuario las haya visto. Aprenderás a actualizar la base de datos para marcar las notificaciones como leídas y a mostrar una marca de verificación en la interfaz de usuario para indicar que se ha leído la notificación. También aprenderás a eliminar las notificaciones leídas para evitar la sobrecarga de la base de datos.


3 comentarios

Inicia sesión para comentar

Comentarios:

  • Ramon Marquez

    Ramon Marquez hace 2 meses

    Hola excelente curso victor, yo tengo una duda en Auth()→user()→notification(), como es posible que laravel tenga acceso a la tabla notificaciones cuando no se ha creado la relación en los modelos  por medio de un hasMany ???

  • Martin Pereira

    Martin Pereira hace 3 meses

    Hola, yo uso bootstrap 5, y al dar click en boton (email y el badge de notificacion), me oculta no solo el badge, tambien el icono feather

    y el comportamiento del dropdown se cierra solo, no permitiendome ver las notificaciones

     

    Ayuda con alguna solucion?

     

    Saludos

     

    <button type="button" wire:click="resetNotificationCount()" class="btn btn-icon btn-transparent-dark dropdown-toggle"

    id="navbarDropdownMessages" role="button" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false"

    title="Emails">

    <i data-feather="mail"></i>

    @if (auth()->user()->notification)

    <span class="badge bg-danger rounded-circle">{{ auth()->user()->notification }}</span>

    @endif

    </button>

     

    @foreach ($notifications as $notification)

    <a wire:click="read('{{ $notification->id }}')"

    class="dropdown-item dropdown-notifications-item {{ !$notification->read_at ? 'bg-warning' : '' }}"

    href="{{ $notification->data['url'] }}">

    <img class="dropdown-notifications-item-img" src="{{ asset('images/profile/profile.svg') }}"

    width="40" height="40">

    <div class="dropdown-notifications-item-content">

    <div class="dropdown-notifications-item-content-text">

    {{ $notification->data['message'] }}

    </div>

    <div class="dropdown-notifications-item-content-details">Thomas Wilcox ·

    {{ $notification->created_at->diffForHumans() }}</div>

    </div>

    </a>

    @endforeach

  • Francisco Pinto

    Francisco Pinto hace 11 meses

    Hola, existe alguna manera de colocar un temporizador en el livewire, tal que cada 2 minutos la página verifique si hay un nuevo mensaje??