2010-05-13 104 views
3

我正在使用CakePHP框架构建一个Web应用程序。我的问题最简单的形式是这样的:CakePHP与多列有很多关系

我有一个用户表和消息表与相应的模型。消息从用户发送到另一个用户。因此,messages表中有from_id和to_id列,都引用id的用户。我可以通过使用$ belongsTo将消息模型链接到用户模型,但我无法通过使用$ hasMany以相同的方式将用户模型与消息模型(反向)链接起来。

var $hasMany = array(
    'From' => array(
    'className' => 'Message', 
    'foreignKey' => 'from_id', 
    'dependent' => false, 
    'conditions' => '', 
    'fields' => '', 
    'order' => '', 
    'limit' => '', 
    'offset' => '', 
    'exclusive' => '', 
    'finderQuery' => '', 
    'counterQuery' => '' 
), 
    'To' => array(
    'className' => 'Message', 
    'foreignKey' => 'to_id', 
    'dependent' => false, 
    'conditions' => '', 
    'fields' => '', 
    'order' => '', 
    'limit' => '', 
    'offset' => '', 
    'exclusive' => '', 
    'finderQuery' => '', 
    'counterQuery' => '' 
) 
); 

这里可以做些什么?有任何想法吗?谢谢你的帮助。

+0

你的用户模型不工作?如果你调试'$ this-> User-> find('all')',那么输出是什么? – Young 2010-05-13 08:18:32

回答

2

您可以同时将两个模型用'hasMany'或'belongsTo'多次连接到不同的外键。由于我没有从食谱中找到任何示例,所以我用一小块代码,并按预期工作。