Как использовать, где в двух состоянии на лезвии фреймворк Laravel
Как я могу добавить два условия where в Laravel blade
({{ \App\Product::all()->where('category_id',$category->id 'user_id',Auth::user()->id)->count() }})



Ответы - Как использовать, где в двух состоянии на лезвии фреймворк Laravel / How to use where in two condition on blade laravel

12.01.2020 03:40:25
Вы можете связать несколько цепочек, где они следуют друг за другом.
({{ \App\Product::where('category_id', $category->id)->where('user_id', Auth::user()->id)->count() }})
Я предлагаю вам прочитать документацию по построителю запросов, она объясняет все, что вы можете сделать довольно хорошо.
Я также заметил, что вы начали свой запрос с all()
это будет извлекать все строки из базы данных, выполняющей теwhere
условия в вашем приложении. Это быстрее, чтобы запустить их в вашей базе данных, так что, удалив all()
запрос будет выполняться с темиwhere
условия, как я думаю, это то, что вы хотите.

12.01.2020 03:40:28
вы можете использовать where condition в Laravel blade, как вы можете использовать их в своем контроллере
({{ \App\Product::all()->where('category_id',$category->id)->where('user_id',Auth::user()->id)->count() }})

12.01.2020 03:52:29
Прежде чем ответить на ваш вопрос я хотел бы отметить 2 вещи
1) сначала не используйте \App\Product::all (), а затем запрос where. Таким образом, вы получаете все записи из БД в виде коллекции, а затем операция where выполняется над коллекцией, а не в БД. Вы не хотите этого, потому что если у вас есть тысячи или миллионы записей, все они будут возвращены.
2) это не очень хорошая практика, чтобы иметь запросы внутри ваших взглядов. Просто получите результат запроса где-то внутри вашего проекта и передайте это значение в представление через контроллер.
Поэтому для вашего запроса есть фактически 2 способа добавить несколько предложений where с помощью laravel query builder
1) Используя прикованные где:
({{ \App\Product::where('category_id',$category->id)->where('user_id',Auth::user()->id)->count() }})
2) используя массив внутри where:
({{ \App\Product::where(['category_id' => $category->id, 'user_id' => Auth::user()->id])->count() }})