我在cakephp中遇到了一件奇怪的事情。所以我试着先解释一下。
我有:
职员/模型
public $virtualFields = array(
[...] ,
'fullnameForList' => 'CONCAT(Staff.lastname, ", ", Staff.firstname)',
[...]
功能
public function getGroupLeaderListArray(){
$this->loadModel('Staff');
$loc_list = $this->Staff->find("list",
array("fields" => array("id", 'fullnameForList')),
array("order" => array("Staff.lastname ASC" ))
);
$this->set('GroupLeaderList',$loc_list);
}
列表的输出
当我正在使用上面的函数getGroupLeaderListArray时,我得到了虚拟域fullnameForList的内容,但它没有按顺序排列。例如。 姓氏,名字
当我在字段之前放置数组顺序时,它会按顺序显示但是字段错误。例如。 名字姓氏
如何获取包含虚拟字段和正确顺序的列表。我不知道进一步,因为这个问题,我体重增加,头发松弛。帮助apreciated大时间!
欢呼endo
答案 0 :(得分:2)
您在此处使用无效的数组结构。你需要注意数组如何在蛋糕中工作。一个带有命名键的数组(这里有多个数组)作为find()的第二个参数,例如。
find($type, $options);
所以它:
$locList = $this->Staff->find("list",
array(
'fields' => array('id', 'fullnameForList'),
'order' => array('Staff.lastname ASC')
)
);