2016-09-07 11 views
-1

とフィルタがあります:私はいるかのような条件を作るために考え私は、このオプションを使用して、選択を持っているすべてのオプション

public function filterIlumination($neighborhood) { 
    $lampModels = LampModels::all()->toArray(); 
    $aluminumcableModels = AluminumcableModels::all()->toArray(); 
    $reactorModels = ReactorModels::all()->toArray(); 
    $steelconduitModels = SteelconduitModels::all()->toArray(); 

    $ilumination = Ilumination::whereRaw('street_neighborhood_id = ?', array($neighborhood)) 
            ->with('street') 
            ->with('neighborhood') 
            ->with('reactor') 
            ->with('steelconduit') 
            ->with('aluminumcable') 
            ->with('economyplan') 
            ->with('lamp')->get(); 

    return Response::json(array('ilumination' => $ilumination, 
          'lampModels' => $lampModels, 
          'aluminumcableModels' => $aluminumcableModels, 
          'steelconduitModels' => $steelconduitModels, 
          'reactorModels' => $reactorModels)); 

}

<select id="bairro" name="bairro" class="sg-form--control"> 
    <option value="all">All</option> 
    <option value="1">Centro</option> 
    <option value="2">Anhumas</option> 
    <option value="3">São José</option> 
</select> 

そして、次のコントローラを(neighborhood == 'All')はALLフィルタですが、他にも多くのオプションがありますが、これは賢明ではないと思います。私はLaravelの文書をチェックします。私はそれに何かを見つけませんでした。もし誰かがこれで私を助けることができれば、私は私が何をしているのか分からない。

答えて

0

あなたは、近隣の値として空の文字列を使用することができます。$周辺が空でない場合

<select id="bairro" name="bairro" class="sg-form--control"> 
    <option value="">All</option> 
    <option value="1">Centro</option> 
    <option value="2">Anhumas</option> 
    <option value="3">São José</option> 
</select> 

のみWHERE条件を追加します。

関連する問題