cakephp 3.2如何获取多个虚拟字段数据
How to get multiple virtual field data in cakephp 3.2
我想在提取中合并两个虚拟字段records.But我只为一个虚拟字段完成了,另一个是returning null。
我很困惑如何 return 两个虚拟字段 data.For 一个很好。
下面是代码
在model/Entity/Order.php
protected $_virtual = ['due','paid'];
protected function _getDue() {
return $this->_properties['collection']['due_amount'];
return $this->_properties['collection']['total_sale_amount']-$this->_properties['collection']['due_amount'];
}
下面是输出
[
{
"id": 20,
"collection": {
"id": 150,
"order_id": 20,
"total_sale_amount": 110,
"net_paid": 10,
"due_amount": 70,
"is_paid": 1,
"payment_mode": "DD",
"reference_num": "",
"created": "2016-09-09T00:00:00+0000"
},
"due": 70,
"paid": null
}
]
此处支付为空,但应该为 110-70 = 40。
如果我保留任何一个而不是 2 个,我就会得到我应该需要的东西。
请推荐我。
任何建议将不胜感激。
:)
评论中提到,你不能在一个函数中写两个return。
你应该使用数组。将两个值都放在数组中,return 一个数组。
protected function _getDue() {
$data = [];
$data['due'] = $this->_properties['collection']['due_amount'];
$data['paid'] = $this->_properties['collection']['total_sale_amount']-$this->_properties['collection']['due_amount'];
return $data;
}
我想在提取中合并两个虚拟字段records.But我只为一个虚拟字段完成了,另一个是returning null。
我很困惑如何 return 两个虚拟字段 data.For 一个很好。
下面是代码 在model/Entity/Order.php
protected $_virtual = ['due','paid'];
protected function _getDue() {
return $this->_properties['collection']['due_amount'];
return $this->_properties['collection']['total_sale_amount']-$this->_properties['collection']['due_amount'];
}
下面是输出
[
{
"id": 20,
"collection": {
"id": 150,
"order_id": 20,
"total_sale_amount": 110,
"net_paid": 10,
"due_amount": 70,
"is_paid": 1,
"payment_mode": "DD",
"reference_num": "",
"created": "2016-09-09T00:00:00+0000"
},
"due": 70,
"paid": null
}
]
此处支付为空,但应该为 110-70 = 40。
如果我保留任何一个而不是 2 个,我就会得到我应该需要的东西。
请推荐我。 任何建议将不胜感激。 :)
评论中提到,你不能在一个函数中写两个return。
你应该使用数组。将两个值都放在数组中,return 一个数组。
protected function _getDue() {
$data = [];
$data['due'] = $this->_properties['collection']['due_amount'];
$data['paid'] = $this->_properties['collection']['total_sale_amount']-$this->_properties['collection']['due_amount'];
return $data;
}