Laravel Resource Collection Rest Api Query Filter - PullRequest
0 голосов
/ 11 ноября 2019

Я хотел бы добавить параметры запроса в мои остальные API. Я создал это в Resource Collections и теперь не могу найти способ добавить эту функциональность. Каждый урок для других способов создания API. Я хотел бы добавить к конечной точке / api / v1 / product filtering по коду продукта что-то вроде этого: / api / v1 / product? Product_code = 0208588343711. Это мой код

Контроллер продукта:

public function index(): ProductCollection
{
    return new ProductCollection(Product::paginate());
}

ProductCollection

class ProductCollection extends ResourceCollection
{
    /**
     * Transform the resource collection into an array.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return array
     */
    public function toArray($request)
    {
        return parent::toArray($request);
    }
}

1 Ответ

1 голос
/ 11 ноября 2019

Если кому-то нужен ответ, я сделал это следующим образом:

public function index(): ProductCollection
    {
        if (request()->input('product_code')){
            return new ProductCollection(Product::where('product_code', 'LIKE', request()->input('product_code'))->get());
        }
        return new ProductCollection(Product::paginate());
    }
...