我想知道在哪里写选择查询是用cake php编写的我只在控制器中看到以下代码
function getpages($position = 'top') {
return $this->Page->find('all', array('conditions' => 'Page.'.$position.'_show > 0', 'order' => 'Page.'.$position.'_order ASC'));
}
及其给出以下错误
警告(512)SQL错误:1064:您的SQL语法有错误;查看与您的MySQL服务器版本对应的手册,以便在
'FROM AS `Page` WHERE `Page`.`top_show` > 0 ORDER BY `Page`.`top_order` ASC'
附近使用正确的语法
和
$this->set('categories', $this->Category->find('all', array('conditions' => array('Category.parent_id' => $category['Category']['id']), 'order' => array('Category.name' => 'asc'))));
发出以下错误
SQL错误:1064:您的SQL语法中有错误;检查与MySQL服务器版本对应的手册,以便在''
附近使用正确的语法
请告诉我如何解决它
答案 0 :(得分:0)
这是编写查询的正确方法:
$this->set('categories', $this->Category->find('all', array('conditions' => array('Category.parent_id' => $category['Category']['id']),
'order' => 'Category.name ASC'))));
答案 1 :(得分:0)
首先这是你正确的格式
$this->set('categories', $this->Category->find('all', array('conditions' => array('Category.parent_id' => $category['Category']['id']),
'order' => 'Category.name ASC'))));
第二个在类别模型类
中添加这两个var $useTable = 'Categories'; // Actual table name
var $alias = 'Category';
这就是我的理解。