Я хочу получить 2 результата из запроса фильтра в Laravel версии 6. Я хочу получить информацию из таблицы продуктов, в которой пользователь может изменить элемент, существующий на странице, с помощью поля выбора с именем pageitemcount
и выполнить поиск по поле с именем select
. когда пользователь выбирает pageitemcount
, а также ищет имя, отправьте форму и запустите запрос ниже. Когда пользователь ищет что-либо, доступный фильтр категории должен быть ограничен доступными категориями. Я хочу показать отдельную категорию продукта в дополнение к списку продуктов.
public function productIndex(Request $request)
{
$take = 10;
$query = Product::query();
if ($request->has('pageitem')){
$take = $request->input("pageitem");
}
// Search
if ($request->has('search')){
$query = $query->where('name', $request->input("search"));
}
$availableCategoriesQuery= $query;
// Get product unique product category to show them to user
// that exist in prodcut list that show to user
$availableCategories = $availableCategoriesQuery->select("category_id")->distinct()->get();
// Get product list by pagination
$productList = $query->paginate($take);
return view('admin.manage_product', ['productList' => $productList, 'availableCategories' => $availableCategories]);
}
, но когда выполняется $availableCategories
, затрагивается переменная $query
, и я не могу получить правильный результат из следующей строки, я получаю результат $availableCategories
в $productList
переменная. я не хочу повторять мой код снова, как я могу иметь дело?
результат $ availableCategories полностью верен, но результат productList
равен $availableCategories
, который разбит на страницы.