Module Prestashop-backoffice表格表单中的计算字段
我想在后台的Prestashop 1.6自定义表中添加一个虚拟字段。不应将字段indice_calculou pvp2保存到数据库中,因为它是根据indice_calculou pvp和precio_venta_recondado的值计算得出的。正确的方法是什么 我的代码如下:Module Prestashop-backoffice表格表单中的计算字段,module,prestashop-1.6,Module,Prestashop 1.6,我想在后台的Prestashop 1.6自定义表中添加一个虚拟字段。不应将字段indice_calculou pvp2保存到数据库中,因为它是根据indice_calculou pvp和precio_venta_recondado的值计算得出的。正确的方法是什么 我的代码如下: public function renderList() { $this->addRowAction('edit'); $this->addRowAction('delete');
public function renderList() {
$this->addRowAction('edit');
$this->addRowAction('delete');
$this->fields_list = array(
'id_product_price' => array(
'search' => false,
'title' => 'ID'
),
'precio_coste' => array(
'title' => 'Precio coste',
'search' => false,
'callback' => 'callback_format_price',
'suffix' => '€'
),
'indice_calculo_pvp' => array(
'title' => 'Indice de cálculo PVP',
'search' => false,
'callback' => 'callback_format_price',
'suffix' => '%'
),
'indice_calculo_pvp2' => array(
'title' => 'Indice de cálculo PVP2',
'search' => false,
'callback' => 'callback_calculate_pvp',
'suffix' => '%'
),
'precio_venta_recomendado' => array(
'title' => 'Precio de venta recomendado con IVA',
'search' => false,
'callback' => 'callback_format_price',
'suffix' => '€'
)
);
return parent::renderList();
}
您有两种选择:
您可以在代码中使用回调函数:
公共函数回调\u计算\u pvp$id,$tr
{
返回$tr['indice_calculo_pvp']*$tr['precio_venta_recomendado'];
}
您可以在字段列表indice_calculo_pvp2中使用虚拟列,并在SQL查询或getList override函数中设置值,就像ProductController对price所做的那样。
祝你好运。在SQL SELECT查询中使用calculation查询列表。我不知道您的计算公式和SELECT查询是什么,但示例如下:
$this->_select = 'a.indice_calculo_pvp / a.precio_venta_recomendado AS indice_calculo_pvp2';
嗨,我对Prestashop很陌生。。。我将如何做这些事情,你能给我一个简短的例子我如何添加回调到字段列表-想法是添加一个新的字段除了现有的吗?我也评论了下面。。。我不知道我会怎么做,我能按你说的写选择吗?谢谢,我只是按你说的方式写,而且很有效!我将尝试调试代码,以了解其内部工作原理。