cakephp 3:find('list')未返回特定查询的记录

时间:2019-11-25 17:13:53

标签: cakephp-3.0

我遇到了find('list')问题,该问题未返回特定值的行。但是,当我在SQLYog GUI中执行相同的查询时,实际上是在返回行。

cakePHP调试工具包SQL日志查询的屏幕截图: enter image description here

我在SQLYog GUI中执行此查询时的记录的屏幕快照: enter image description here

请参阅下面我在控制器中使用的代码:

$proposal_part_length = number_format($filterForm['proposal_part_length'], 4, '.', '');
$proposal_part_width = number_format($filterForm['proposal_part_width'], 4, '.', '');

$this->loadModel('ProposalParts');
$parts = array();

$parts = $this->ProposalParts
    ->find('list', [
        'keyField' => 'id',
        'valueField' => 'proposal_id'
    ])
    ->where(['ProposalParts.length' => $proposal_part_length, 'ProposalParts.width' => $proposal_part_width])
    ->distinct(['ProposalParts.proposal_id'])
    ->toArray();

where子句数据类型中的两个字段均为“ float(11,4)”。我尝试删除“ number_format”函数,但是仍然找不到该QUERY的记录,但是如果我更改“ length”和“ width”值(例如:“ 5”,“ 1”或“ 5.0000”),系统正在显示记录, “ 1.0000”。

有人建议这是什么问题吗?

如果您有任何问题,请告诉我。

0 个答案:

没有答案