亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

具有多個集合的 Laravel 多個過濾器表

具有多個集合的 Laravel 多個過濾器表

PHP
慕勒3428872 2023-04-21 16:37:38
我正在嘗試創建一個多重過濾函數來過濾我的表。我有一個名為 Product 的模型,它有名為 categories、colors 和 sizes 的集合。我有以下觀點:                <div class="col-6">                    <div class="form-group mt-3">                        <label>{{ __('Categories') }}</label>                        <select class="form-control" id="select-categories">                            <option value="0">All</option>                            @foreach($categories as $category)                            <option value="{{ $category->id }}">{{ $category->name }}</option>                            @endforeach                        </select>                    </div>                </div>                <div class="col-6">                    <div class="form-group mt-3">                        <label>{{ __('Colors') }}</label>                        <select class="form-control" id="select-colors">                            <option value="0">All</option>                            @foreach($colors as $color)                            <option value="{{ $color->id }}">{{ $color->name }}</option>                            @endforeach                        </select>                    </div>                </div>                <div class="col-6">                    <div class="form-group mt-3">                        <label>{{ __('Sizes') }}</label>                        <select class="form-control" id="select-sizes">                            <option value="0">All</option>                            @foreach($sizes as $size)                            <option value="{{ $size->id }}">{{ $size->name }}</option>                            @endforeach                        </select>                    </div>                </div>然后我使用 JQuery 將 AJAX 請求發送到我的控制器,其中包含所有三個下拉列表的當前選定選項值。示例數據:類別:所有顏色:紅色尺碼:小號現在我想展示紅色和小號的產品,但類別無關緊要。我通過使用一對多關系和鏈接表來獲取集合。$product->categories$product->colors$product->sizes我不確定如何處理這個問題。
查看完整描述

1 回答

?
慕容森

TA貢獻1853條經驗 獲得超18個贊

你可以做類似下面的事情:


public function index(ProductRequest $request) 

{

   $query = Product::where($request->validated());


   return ProductResource::collection($query);

}

在您的 ProductRequest 中,您可以定義要允許的過濾器


class ProductRequest extends FormRequest

{

   ...

   public function rules()

   {

      return [

         'categories' => 'exists:categories,id'

         ....

      ];

   }


查看完整回答
反對 回復 2023-04-21
  • 1 回答
  • 0 關注
  • 105 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號