我有一个带有虚拟字段的学生模型:
var $virtualFields = array(
'full_name' => 'CONCAT(Student.fname, " ", Student.lname)'
);
Run Code Online (Sandbox Code Playgroud)
我正在使用'fields'进行查找操作以获取特定字段:
$this->Student->find('all', array('fields' => array('Student.fname','Student.lname')));
Run Code Online (Sandbox Code Playgroud)
由于某种原因,在找到记录后未创建虚拟字段.我尝试添加Student.full_name但当然它unknown column在mysql中出错.
有任何想法吗?
您不能在字段中指定一个虚拟字段,您需要在没有字段选项的情况下调用它,因此它会带来结果...您可能想要阅读食谱中的示例
调用所有字段是一个选项,另一个是调用字段选项中的字段,类似这样
$this->Student->find('all', array('fields' => array(
$this->student->virtualFields['full_name'].'AS Student__full_name',
'Student.fname','Student.lname')
));
Run Code Online (Sandbox Code Playgroud)