以下是我的json產品詳細信息及其功能。Laravel通過篩選條件搜索
{
"id": 1,
"title": "Moto g4 plus",
"description": "3 GB RAM | 32 GB ROM | Expandable Upto 128 GB\r\n5.5 inch Display\r\n16MP Rear Camera | 5MP Front Camera\r\n3000 mAh Battery",
"price": "14999.00",
"featured_image": "featured_image/qzHWpQeSfKjZ6DOS59ROyYboJ1GCvVi6NNVfLtVV.jpeg",
"category_id": 1,
"brand_id": 4,
"created_at": "2017-07-13 14:59:53",
"updated_at": "2017-07-13 15:07:49",
"deleted_at": null,
"features": [
{
"id": 3,
"name": "RAM",
"parent_id": 1,
"created_at": "2017-07-02 17:42:36",
"updated_at": "2017-07-02 17:42:36",
"default_value": "",
"pivot": {
"product_id": 1,
"feature_id": 3,
"value": "3"
}
},
{
"id": 10,
"name": "Expandable memory",
"parent_id": 1,
"created_at": "2017-07-05 15:43:29",
"updated_at": "2017-07-05 15:43:29",
"default_value": "",
"pivot": {
"product_id": 1,
"feature_id": 10,
"value": "32"
}
},
}
現在我想根據功能篩選搜索,例如想要手機與4GB的RAM和64GB的可擴展內存。 和我想我的所有篩選結果,並給我準確的結果,每下拉選擇。 以下屏幕截圖爲用戶選擇功能的下拉菜單。
下面是產品和樞軸我的數據庫表中的產品功能 文中的表我如何保存我的產品及其與產品價值的功能。
下面是我的模型代碼
public function features()
{
return $this->belongsToMany('App\Feature')->withPivot('value');
}
Contoller.php
function searchedFeatures(Request $request)
{
return $products = Product::with(['features' => function($q){
$q->where('name','=','ram');
$q->where('name','=','operating system');
}])->get();
}
這會給我造成黑屏功能陣列,我想檢查功能名稱及其如產品價值的RAM 4GB或產品具有可擴展內存32Gb等,並導致所有匹配產品陣列。
你的意思是你想使用請求值來過濾查詢結果嗎? –
@OmisakinOluwatobi我想從json數組中過濾下拉列表中選定的值,並給出結果,例如,如果我從下拉列表中選擇ram 4Gb,然後匹配的產品誰有4gb ram給我的結果和樞軸值是像ram功能的值。 –
@Nileshsingh,當你選擇下拉菜單時,你能否在控制器中顯示你收到的請求? –