【问题标题】:Cakephp display other model associated with foreign keyCakephp 显示与外键关联的其他模型
【发布时间】:2012-11-07 17:32:42
【问题描述】:

我的模型 Item 和 Actor 具有 HABTM 关系(工作正常)

现在,我添加了角色模型,其中包含 actorid、itemid(作为外键)和演员的角色。

在我的项目视图中,我想显示演员及其角色。 我设置了递归=2。

当我调试 $items 时,我会收到属于该参与者的所有角色。 我只希望显示包含查看的 itemid 和 actorid 的角色。

我相信我可能需要调整我的模型,但不知道如何.. 有什么建议吗?

物品模型

public $hasAndBelongsToMany  = array( 
            'Actor' => array(
            'className' => 'Actor',
            'joinTable' => 'item2actor',
            'foreignKey' => 'item_id',
            'associationForeignKey' => 'actor_id',
            'unique' => 'true'
));
public $hasMany = array(
            'Role' => array(
            'className' => 'Role',
            'foreignKey' => 'actorid',  
));

演员模型

public $hasAndBelongsToMany  = array(
        'Item' => array(
            'className' => 'Item',
            'joinTable' => 'item2actor',
            'foreignKey' => 'actor_id',
            'associationForeignKey' => 'item_id',
            'unique' => 'true'));
public $hasMany = array(
         'Role' => array(
            'className' => 'Role',
            'foreignKey' => 'actorid',  
));

【问题讨论】:

  • 这已经完成了,我找到了一种使用 -very large- find 查询并将递归设置为 -1 的方法

标签: foreign-keys cakephp-2.0


【解决方案1】:

我建议不要使用 -very large- 查询和递归,而是使用 Containable 行为,这样更容易维护要从 DB 接收的数据。

http://book.cakephp.org/2.0/en/core-libraries/behaviors/containable.html@蛋糕书。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多