Laravel помогает множественным вызовам разных деталей лезвия — лучшие практики

Я создаю помощника для подсчета непрочитанных сообщений и вызываю эту функцию на нескольких блейдах.
— Меню
— Меню профиля

Этот помощник сделал запрос базы данных, чтобы получить это значение, в настоящее время, когда я нахожусь вне профиля, мы получаем только один запрос, но когда я нахожусь в разделе профиля, так как мы вызываем 2 раза эту функцию, у меня есть 2 запроса, один для каждый звонок, И когда я нахожусь в списке сообщений, мы звоним 3 раза!

Как лучше всего поступить в такой ситуации? Я пытаюсь найти в интернете какие-то лучшие практики, но ничего не нашел.

Заранее спасибо.
Pablo

РЕДАКТИРОВАТЬ:

Вспомогательная функция

function unreadMessages()
{
$messages = App\Message::select(['*', DB::Raw("IFNULL( `thread_id` , `id` )")])
->where(function ($query) {
$query->where('receiver_id', Auth::user()->id)
->where('receiver_delete', false)
->where('receiver_read', false);
})->get()
->unique(DB::Raw("IFNULL( `thread_id` , `id` )"));

return count($messages);
}

Затем я вызываю эту функцию пару раз на разных блейдах

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]