В представлении списка я хотел бы показать имена поставщиков вместо идентификатора. Представление генерируется автоматически. Как я могу это изменить?
Код, который я имею в опции renderList:
public function renderList()
{
$this->addRowAction('view');
// Adds an Edit button for each result
$this->addRowAction('edit');
// Adds a Delete button for each result
$this->addRowAction('delete');
$this->simple_header = false;
return parent::renderList();
}
и список полей следующий:
$this->fields_list = array(
...
'id_product_supplier' => array('title' => $this->l('ID Supplier'), 'align' => 'center', 'class' => 'fixed-width-xs'),
...
);
Если я хочу показать имя поставщика вместо идентификатора, и у меня есть возможность отфильтровать поставщиков в списке …
Что я могу сделать?
Спасибо!
Вы можете изменить его двумя способами, в зависимости от того, чей это контроллер (ваш по умолчанию):
Если вы создали свой собственный контроллер администратора:
public function getList($id_lang, $order_by = null, $order_way = null, $start = 0, $limit = null, $id_lang_shop = false)
{
parent::getList($id_lang, $order_by, $order_way, $start, $limit, $id_lang_shop);
foreach($this->_list as &row)
{
$row['new_field'] = 'Hello';
$row['existing_field'] = 'Changed';
}
}
Если вы используете модуль для изменения существующей формы:
public function hookActionAdminProductsListingResultsModifier($args)
{
$args['list_total'] += 1;
foreach($args['list'] as &row)
{
$row['new_field'] = 'Hello';
$row['existing_field'] = 'Changed';
}
}
Если вы Goona использовать крючок, вы должны зарегистрироваться в первую очередь. Также можно пометить часть {AdminProducts} в имени ловушки.
Для получения дополнительной информации см. classes/controller/AdminController.php @ Line 2952
,
Hook::exec('action'.$this->controller_name.'ListingResultsModifier', array(
'list' => &$this->_list,
'list_total' => &$this->_listTotal,
));
Других решений пока нет …