Надеюсь, поможет

расноречивый словарь таков:

public function search(Request $request)
{
    $search = '';
    $searchdate = '2017-04-27';

    $reports = Report::whereHas('user', function($query) use ($search) 
    {
        $query->where(function ($q) use($search)
        {
            $q->where('name' ,'LIKE' ,'%'.$search.'%');
        });
    })->orWhereHas('store', function($query) use ($search){
        $query->where(function ($q) use($search)
        {
            $q->where('name', 'LIKE', '%'.$search.'%');
        });
    })->orWhereHas('category', function($query) use ($search)
    {
        $query->where(function ($q) use($search)
        {
            $q->where('name', 'LIKE' , '%'.$search.'%');
        });
    })->whereDate('created_at','=',$searchdate)->paginate(10);
}

При выполнении результат не совпадает с фильтром$searchdate

Как я могу решить это?

Обновить :

Я отлаживаю запрос, результат выглядит так:

SELECT * 
FROM `reports` WHERE (
    EXISTS (SELECT * FROM `users` WHERE `reports`.`user_id` = `users`.`id` AND (`name` LIKE '%%') AND `users`.`deleted_at` IS NULL) 
    OR EXISTS (SELECT * FROM `stores` WHERE `reports`.`reportable_id` = `stores`.`id` AND (`name` LIKE '%%') AND `stores`.`deleted_at` IS NULL) 
    OR EXISTS (SELECT * FROM `categories` WHERE `reports`.`category_id` = `categories`.`id` AND (`name` LIKE '%%') AND `categories`.`deleted_at` IS NULL) 
    AND DATE(`created_at`) = '2017-04-27'
) 
AND `reports`.`deleted_at` IS NULL

Кажется, это не работает. Так как

И ДАТА (created_at) = '2017-04-27'

внутри круглых скобок

Итак, это должно измениться так:

SELECT * 
FROM `reports` WHERE (
    EXISTS (SELECT * FROM `users` WHERE `reports`.`user_id` = `users`.`id` AND (`name` LIKE '%%') AND `users`.`deleted_at` IS NULL) 
    OR EXISTS (SELECT * FROM `stores` WHERE `reports`.`reportable_id` = `stores`.`id` AND (`name` LIKE '%%') AND `stores`.`deleted_at` IS NULL) 
    OR EXISTS (SELECT * FROM `categories` WHERE `reports`.`category_id` = `categories`.`id` AND (`name` LIKE '%%') AND `categories`.`deleted_at` IS NULL) 
) 
AND DATE(`created_at`) = '2017-04-27'
AND `reports`.`deleted_at` IS NULL

Какая у меня проблема в том, как измениться в красноречивом молнии?

Ответы на вопрос(1)

Ваш ответ на вопрос