Sql Cakephp``转义我的计算字段名

Sql Cakephp``转义我的计算字段名,sql,cakephp,Sql,Cakephp,这曾经奏效: $this->Model->find('all', array( 'fields' => 'Model.field/100 as name') 但我现在得到一个SQL错误,因为字段用字段倒逗号封装: SELECT `Model.field/100 as name` FROM models AS Model .. 应该是哪一个 我最近安装了Cakephp 1.3.6到1.3.13的更新版本,但手册中没有提到任何更改 这是一个非常烦人且不必要的问题,有人有什么

这曾经奏效:

$this->Model->find('all', array(
  'fields' => 'Model.field/100 as name')
但我现在得到一个SQL错误,因为字段用字段倒逗号封装:

SELECT `Model.field/100 as name` FROM models AS Model ..
应该是哪一个

我最近安装了Cakephp 1.3.6到1.3.13的更新版本,但手册中没有提到任何更改


这是一个非常烦人且不必要的问题,有人有什么想法吗?

您可能需要使用virtualFields来解决这个问题。它们可以包含这样的表达式

好的,找到了线索,但仍然不知道为什么:

Cakephp希望表达式在括号中,所以

    'fields' => array('Model.field/100 as name')  
不起作用,但是

    'fields' => array('(Model.field/100) as name')  

是的。

Ok,找到了线索,但仍然不知道为什么:Cakephp希望表达式位于括号中,因此'fields'=>array('Model.field/100 as name')不起作用,但'fields'=>array('Model.field/100 as name')起作用。突然之间…我要写同样的东西XD,把它们放在括号里,也用大写字母as,因为一些sql命令只有在大写时才能识别它们。。。
    'fields' => array('(Model.field/100) as name')