Необходимо реализовать фильтр при выводе товаров (к примеру, наличие\отсутствие изображения) Подскажите как реализовать. Пока что просто проверяю на наличие переданных данных методом ПОСТ. И затем добавляю строку запроса в переменную $orm. Но потом не знаю как ее прикрутить к запросу
public function action_index()
{
$orm = '';
if(isset($_POST['filter_submit']))
{
if(!empty($_POST['filter_name']))
{
$name = $_POST['filter_name'];
$orm .= "->where('name', '=', $name)";
}
switch($_POST['filter_main_image'])
{
case 1:
$orm .= "->where('main_image','!=','')";
break;
case 2:
$orm .= "->where('main_image','=','')";
break;
}
// Как здесь прикрутить переменную $orm перед find_all()
$products = ORM::factory('product')->find_all();
}
else
{
$count = ORM::factory('product')->count_all();
$pagination = Pagination::factory(array(
'total_items' => $count,
));
//Вывод из БД записей
$products = ORM::factory('product')
->limit($pagination->items_per_page)
->order_by('id', 'desc')
->offset($pagination->offset)
->find_all();
}
$content = NULL;
$content = View::factory('admin/a_products/va_products_index')
->bind('products', $products)
->bind('pagination', $pagination);
// Выводим в шаблон
$this->template->page_title = 'Продукты';
$this->template->block_center = array($content);
}