cakePhp添加记录问题

时间:2011-03-28 16:03:21

标签: cakephp add relationship

我有3张桌子:
item {name,id,category_id}
category {id,name,section_id}
sections {id,name}

如您所见,每个项目都与一个类别相关,每个类别都与一个部分相关。 我使用烘烤选项,把它全部烤好,好吧,不是全部.. 因为Category.name可以复制,并且因为它是显示的字段,所以我发现我的自我处于阻止我知道我真正使用哪个类别的情况。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

你可以这样做。添加到您的类别模型:

    var $virtualFields = array(
       'category_unique_name' => 'CONCAT(Category.name, "-", Category.id)'
    );

    var $displayField = 'category_unique_name';

此虚拟字段可用于根据其ID和名称的组合来确定哪个类别。但是,虚拟字段存在一些限制。在此处阅读:http://book.cakephp.org/view/1608/Virtual-fields#!/view/1608/Virtual-fields

答案 1 :(得分:0)

嗯,答案是: 使用find('list')recursive选项为ON,使用3个字段而不是2个字段。 这样它就可以对各个部分下的类别进行分组。