Laravel帮助多个调用不同的刀片部件 - 最佳实践

时间:2017-03-21 15:35:59

标签: php laravel helpers

我创建了一个帮助器来获取未读消息的数量,我在几个刀片上调用该函数 - 菜单 - 个人资料菜单

那个助手做了一个db查询来获取该值,目前当我在配置文件之外时,我们只获得一个查询,但是当我在配置文件部分时,因为我们调用2次该函数我有2个查询,每次通话一个,当我在消息列表上时,我们拨打3次电话!

在这种情况下,最好的方法是什么?我尝试在互联网上搜索某种最佳做法,但我找不到任何东西。

提前致谢。 巴勃罗

编辑:

辅助功能

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);
}

然后我在不同的刀片上多次调用该功能

0 个答案:

没有答案