在列表视图中,我想显示供应商名称而不是ID。视图自动生成。我怎样才能改变它?
我在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'),
...
);
如果我想显示供应商的名称而不是Id,并且可以选择过滤列表中的供应商......
我该怎么办?
谢谢!
答案 0 :(得分:1)
您可以通过两种方式更改它,具体取决于它的控制器(默认为您的控制器):
如果您构建了自己的管理员控制器:
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,
));