我不知道出了什么问题,但我的代码没有输出已付款列
$payment_tbl = TableRegistry::get("MembershipPayment");
$payments = $payment_tbl->find();
$payments->select(['payment_total'=> $payments->func()->sum('paid_amount')]);
$this->set("payments",$payments);
然后将其作为回波$payments->payment_total;
进行回波
$payments
将是一个查询结果对象,而不是单个结果。使用这个查询,如果只需要一行,请在sum
调用之后添加->first()
。
一般来说,如果你没有得到你想要的,可以转储有问题的变量的内容,比如pr($payments)
或debug($payments)
,这通常会很快让你清楚地知道问题所在。在这种情况下,你会发现它不是你想要的Entity对象。