2016-06-08 73 views
0

即時通訊相當新的使用這個即時通訊卡住我需要顯示輸出結果的特定查詢作爲我的看法下拉列表。在我的控制器,這裏是查詢顯示結果查詢形式::選擇laravel 4.2

//categories 
    $cats = DB::table('nsa_subcategory AS sc') 
      ->join('nsa_maincategory AS mc' , 'sc.maincategoryid' , '=' , 'mc.maincategoryid') 
      ->select('sc.subcategoryid' , 'sc.subcategoryname' , 'mc.maincategoryname') 
      ->get(); 
    // dd($cats); 

我需要顯示在下拉列表中subcategorynamemaincategoryname並獲得subcategoryid IM的卡在這裏的價值。關於如何實現這個的任何想法?提前感謝你!

+1

在打印出''

+0

你能分享輸出嗎? dd()的結果 –

回答

1

試試這個

控制器

$cats = DB::table('nsa_subcategory AS sc') 
      ->join('nsa_maincategory AS mc' , 'sc.maincategoryid' , '=' , 'mc.maincategoryid') 
      ->select('sc.subcategoryid' , 'sc.subcategoryname' , 'mc.maincategoryname')->lists('id', 'categorie name') 
      ; // change this with the right data , the first wil be the value the second will be displayed 

查看

foreach ($cats as $maincat => $subcat) { 
echo $subcat; 
} 

DROPDOWNLIST

{{ Form::select('size', $cats,'Choose category') }} 

即使劑量工作,基本部分是->lists()函數,如果您遇到任何類型的錯誤,添加到查詢將準備要在下拉頁面中顯示的數據 發表評論,我將更新答案如果需要的話

1

上述查詢會給你一個集合對象,但你需要的是一個數組.. .. key =>值對。以下應該做的:

$cats = DB::table('nsa_subcategory AS sc') 
     ->join('nsa_maincategory AS mc' , 'sc.maincategoryid' , '=' , 'mc.maincategoryid') 
     ->lists(DB::raw('CONCAT(sc.subcategoryname," " , mc.maincategoryname) AS cat_name'),'cat_id'); 

這會給你想要的結果。如果你正在使用Laravel的形式助手,你可以直接將它傳遞這樣的:

{{Form::select('name',$cats)}} 
+0

hi rahul我得到的東西說'array_combine():兩個參數應該有相同數量的元素' – BourneShady

+0

可能是選擇功能正在製造麻煩..我會更新相應的答案.. –

+0

我不' t知道發生了什麼,但它給了我任何錯誤,因爲它使用'nsa_subcategory'內部連接'nsa_maincategory'在'nsa_subcategory'上的查詢'select'subcategoryname,''as',','nsa_subcategory'.'subcategoryid'。 maincategoryid' ='nsa_maincategory'.'maincategoryid''我不知道爲什麼它使用這種查詢任何想法? – BourneShady