/** * Prepare CakePHP search * * @param Request $request DataTable request */ protected function prepareSearch(Request $request) { $value = $request->getSearch()->getValue(); if (!empty($value)) { $where = []; foreach ($request->getColumns() as $column) { if ($column->getSearchable() === true) { $where[$column->getData() . ' LIKE'] = '%' . $value . '%'; } } $this->query->andWhere(function (QueryExpression $exp) use($where) { return $exp->or_($where); }); } }