public function getAjax() { $findQuery = Input::get("q"); $demandantes = Demandante::join("usuarios", "demandantes.usuario_id", "=", "usuarios.id")->where(function ($query) use($findQuery) { $partsFindQuery = explode(" ", $findQuery); foreach ($partsFindQuery as $findPart) { $query->orWhere("usuarios.nombre", "LIKE", "%{$findPart}%")->orWhere("usuarios.apellidos", "LIKE", "%{$findPart}%")->orWhere("usuarios.dni", "LIKE", "%{$findPart}%"); } })->select("demandantes.id", "usuarios.nombre", "usuarios.apellidos", "usuarios.dni")->limit(50)->get(); $data["items"] = array(); foreach ($demandantes as $demandante) { $item["id"] = $demandante->id; $item["text"] = $demandante->nombre . " " . $demandante->apellidos . " - " . $demandante->dni; $data["items"][] = $item; } return $data; }