CakePHP树行为错误

时间:2013-10-03 14:21:15

标签: php mysql cakephp

我得到的实际错误:

  

语法错误或访问冲突:1064 SQL中有错误   句法;查看与MySQL服务器版本对应的手册   正确的语法使用附近的孩子'在第1行

它让我疯了,甚至无法想象它为什么会被提升。

在我的控制器CategoryController.php中,我有:

public function index($id = null) {
    $this->set('categories', $this->Category->children($id, true));

在模型Category.php中:

public $actsAs = array('Containable', 'Tree');

CakePHP版本:2.4.1

1 个答案:

答案 0 :(得分:1)

根据我的经验,这只会在您的模型配置错误并且模型回退到AppModel时发生。

您应该调试$this->Category。 例如,在插件中,您需要定义包括插件名称的关系:

public $belongsTo = array(
    'Category' => array(
        'className' => 'PluginName.Category',
        'foreignKey' => 'category_id',
    )
);   

专业提示:为了避免偶然发生这种情况,我在开发设置中包含以下代码段:https://github.com/dereuromark/tools/blob/master/Model/MyModel.php#L45