yii从多个表创建关系的关系

时间:2014-03-27 07:11:33

标签: yii relationship

我有3张桌子。

  

DEAL:-id,companyId,COMPANY:-id,userId,name,website,address   USER:-id,电子邮件,密码,

我想要公司的电子邮件ID。在用户表中

目前正在处理交易

所以在交易模型中我应该建立什么关系?

提前感谢..

2 个答案:

答案 0 :(得分:2)

只需将公司关系添加到您的交易中,您就可以将事物链接在一起:

在交易中:

'company' => [self::BELONGS_TO, 'Company', 'companyId']

在公司:

'user' => [self::BELONGS_TO, 'User', 'userId']

然后你可以$deal->company->user->email

答案 1 :(得分:0)

作为Blizz's answer的扩展,你可以使用CActiveRelation::through来访问没有父关系的子关系,即减少链接

在公司:

'user' => [self::BELONGS_TO, 'User', 'userId']

在交易中:

'company' => [self::BELONGS_TO, 'Company', 'companyId'],
'user' => [self::BELONGS_TO, 'User', 'userId', 'through' => 'company']

然后你可以$deal->user->email