问题,如何使ORM CakePHP,不要浪费我的表名或类,当火焰与mysql函数,例如SUM() "sum(SenasaPedidosDetalles.kg_reales) total_kg_reales“。
示例代码,载于:
打印:612.jpg

输出示例数据:
打印:614.jpg

用CakePHP 2.x .解决这个问题的最佳解决方案是什么?
发布于 2015-07-08 06:45:14
编辑:,正如AgRizzo在注释部分所注意到的,您应该在需要时创建虚拟字段:
$this->Model->virtualFields['total_kg_reales'] = 'SUM(Model.kg_reales)';
$this->Model->find(...) ;您可以使用虚拟字段(在模型中):
public $virtualFields = array(
'total_kg_reales' => 'SUM(SenasaPedidosDetalles.kg_reales)'
);如果您想处理模型别名(请参阅http://book.cakephp.org/2.0/en/models/virtual-fields.html):
public function __construct($id = false, $table = null, $ds = null) {
parent::__construct($id, $table, $ds);
$this->virtualFields['total_kg_reales'] = sprintf(
'SUM(%s.kg_reales)', $this->alias
);
}https://stackoverflow.com/questions/31281289
复制相似问题