如何根据字段在cakephp模型中设置belongsTo关系?

时间:2014-06-16 18:30:32

标签: cakephp-2.0 belongs-to

我有一个表通知如下:

id
parent_type
parent_id

parent_type可以是故事或章节或内容

我想告诉通知模型:

- 如果parent_type是story,那么parent_id将是Story中的外键 - 如果parent_type是chapter,那么parent_id将是Chapter中的外键 - 如果parent_type是content,则parent_id将是Content

中的外键

这可能吗?

谢谢

1 个答案:

答案 0 :(得分:0)

当你在这里看书时:

http://book.cakephp.org/2.0/en/models/associations-linking-models-together.html#belongsto

它说,您可以在 belongsTo 定义中设置条件。因此,您可以定义具有不同条件的三种不同的 belongsTo 关联,例如:

public $belongsTo = array(
    'Story' => array(
        'className' => 'Story',
        'foreignKey' => 'parent_id',
        'conditions' => array('Notification.parent_type' => 'story')
    ),
    ...
);