我有一个带有虚拟字段的Student模型:
var $virtualFields = array(
'full_name' => 'CONCAT(Student.fname, " ", Student.lname)'
);
我正在执行查找操作,以使用“fields”获取特定字段:
$this->Student->find('all', array('fields' => array('Student.fname','Student.lname')));
由于某种原因,在找到记录后没有创建虚拟字段。我试着添加Student.full_name
,但当然它在mysql中给出了unknown column
错误。
有什么想法吗?
3条答案
按热度按时间vdgimpew1#
你不能在字段中指定一个虚拟字段,你需要在没有字段选项的情况下调用它,所以它会把它和结果一起带来...你可能想读一下examples in the cookbook
调用所有字段是一个选项,另一个选项是调用字段选项中的字段,如下所示
xfb7svmp2#
在你的app_model. php中放置一个方法怎么样:
然后像这样使用它:
));
或这样:
));
ruoxqz4g3#
在CookBook上:http://book.cakephp.org/2.0/en/models/virtual-fields.html
它说你可以这样使用它:
产品型号:
控制器或视图:
结果:
因此,您可以像这样使用它: