我遇到了一个问题,我不知道如何解决它。
我有一张桌子,orders
我们的客户只想显示未“批准”的订单。
首先,我认为这很容易,使用find('order_status!='=>'approved' )
...
它显示数据库错误
1064 - 您的 SQL 语法有错误;查看与您的 MySQL 服务器版本相对应的手册,了解在“Order IN ('12', NULL, '', NULL, '08/22/2012', 'Yes', 'No', NULL, ' \r\n 测试 da' 在第 1 行
多次失败后。(删除所有关联表,检查语法,在phpadmin中编写sql)
我认为问题是 Order 是一个保留字,Cakephp 会自动将外星人设置为 order。
所以我使用了查询 $this->Order->query("SELECT * FROM orders where order_status = 'approved';"); 我得到另一个错误:
错误:SQLSTATE [42S22]:找不到列:1054 'where 子句'中的未知列 'orders'
实际上,CakePHP 仍然做同样的事情,“...FROM orders
AS Order...
”
来自 url:/orders?order_status=approved,它可以工作,但我不知道如何表达 '!=approved'
如何解决?我不想重命名订单表。