Как я могу реализовать это в Eloquent?.
select * from product where name like '%value%' and (product_type = product_type_param or product_type_param = 0);
Если указано значение product_type_param
, равное 0
, будут выбраны продукты всех типов, с учетом того, что, конечно, имя также соответствует.
Мой текущий код:
$result = Product::where( [ ['name', 'like', '%' .
$searchAttributes['name'] . '%'],
['product_type', '=', $searchAttributes['product_type']]]
)->get();
Идея будет выглядеть примерно так (извините, пример показывает только мое намерение):
['product_type', '=', $searchAttributes['product_type']] or [$searchAttributes['product_type'] == 0]]
Должен ли я выполнить необработанный запрос?