Добрый день.
Вопрос по QueryBuilder`у.
Вношу изменения в ТДС Интернет-магазин.
$Shop_Controller_Show->shopItems()
->queryBuilder()
->join(array($oCore_QueryBuilder_Select2, 'flt'), 'shop_items.marking', '=', 'flt.Search');
где $oCore_QueryBuilder_Select2 - есть некая выборка из двух колонок с которой мы затем сравниваем наши товары, и где совпал Артикул - те выводим.
Проблема в том, что мне нужно вместе с полями таблицы shop_items вывести эти вот вышеупомянутые 2 поля из таблицы с которой сравниваем. Для этого мне нужно, чтобы в /modules/shop/controller/show.php
вместо
$this->_Shop_Items
->queryBuilder()
->select('shop_items.*')
->where('shop_items.active', '=', 1)
->open()
->where('shop_items.start_datetime', '<', $dateTime)
->setOr()
->where('shop_items.start_datetime', '=', '0000-00-00 00:00:00')
->close()
->setAnd()
->open()
->where('shop_items.end_datetime', '>', $dateTime)
->setOr()
->where('shop_items.end_datetime', '=', '0000-00-00 00:00:00')
->close()
->where('shop_items.siteuser_group_id', 'IN', $this->_aSiteuserGroups)
//->where('shop_items.modification_id', '=', 0)
;
было
$this->_Shop_Items
->queryBuilder()
->select('*')
->where('shop_items.active', '=', 1)
->open()
->where('shop_items.start_datetime', '<', $dateTime)
->setOr()
->where('shop_items.start_datetime', '=', '0000-00-00 00:00:00')
->close()
->setAnd()
->open()
->where('shop_items.end_datetime', '>', $dateTime)
->setOr()
->where('shop_items.end_datetime', '=', '0000-00-00 00:00:00')
->close()
->where('shop_items.siteuser_group_id', 'IN', $this->_aSiteuserGroups)
//->where('shop_items.modification_id', '=', 0)
;
это, насколько я понимаю работало бы и с НЕ измененной ТДС.
Но на ->select('*'

- HostCMS ругается "Exception: Could not execute Shop_Item_Model::__construct()".
Как можно послать запрос на вывод ВСЕХ получившихся в результате запроса столбцов, т.е. *? И можно ли обойтись без изменения контроллера, а только лишь в ТДС внеся правки?