与类别相关的产品

时间:2017-07-09 20:40:50

标签: php laravel laravel-5

我面临的问题是按类别与价格订购产品。当我点击“按价格排序”时,它会显示按价格排序的所有类别的所有产品。我只需要提供与网址中的类别相关的产品,按价格排序 这是控制器:

class SortController extends MainController{

    public function sortBy($category_url, Request $request)
    {
        $sort = $request->get('sort', 'asc');
        $products = Product::orderBy('price', $sort, $category_url)->get();
        return view('content.sort')->with('products', $products);
    }
}

这是观点:

extends('master')
@section ('content')

<form id="order-product-form" method="get" action=">>
    {{url('shop/{category_url}/sort=ASC')}}"enctype="multipart/form-data">
@if ($products) 
    @foreach($products as $product)
        {{ $product['title']}}

2 个答案:

答案 0 :(得分:0)

您需要$ category-&gt; products-&gt; title。

模型类别和产品之间是否存在关联?

答案 1 :(得分:0)

要根据相关模型过滤模型,请使用whereHas()

$products = Product::whereHas('category', function ($query) {

    return $query->where('id', '=', $category_id); // You filter here by the required category
});

$products->orderBy('price', $sort, $category_url)->get();