1

我是 cakephp 的新手,我正在尝试完成一些应该相对容易的事情。我有 2 个模型项目和类别通过 HABTM 关系绑定。

我正在尝试执行以下查询-> 查找属于某个类别的所有项目

$projects = $this->Project->find('all', array('conditions' => array('Category.slug' => $category)));

但是,当我这样做时,它会生成一个 SQL 错误:

SQL Error: 1054: Unknown column 'Category.slug' in 'where clause' 

我究竟做错了什么?

4

1 回答 1

1

据我所知,你可以像这样得到你想要的:

/*in Project Controller file*/

$categorys = $this->Project->Category->find('all', array('conditions' => array('Category.slug' => $category)));

如果正确设置 HABTM 关系,您可能会得到如下信息:

Array
(  
    [Category] => Array
    (
        [id] => xxx
        [name] => hello there
        ...
    )

    [Project] => Array
    (
        [0] => Array
            (
                [id] => 123
                [name] => Breakfast
            )
       [1] => Array
            (
                [id] => 124
                [name] => Dessert
            )
       [2] => Array
            (
                [id] => 125
                [name] => Heart Disease
            )
    )
)

这就是您想要的,不是吗?请参阅食谱中 cakephp中的 HABTM 工作。

于 2010-03-21T01:29:40.243 回答