Привет есть у меня 7 таблиц, вот скрин
Хотелось бы одним запросом к Contats Выбрать Компанию, ее категории, работников и телефоны работников и т.д.
Я сделал такие связи
Contactspublic function relations()
{
return array(
'company' => array(self::BELONGS_TO, 'Company', 'company_id'),
);
}
Companypublic function relations()
{
return array(
'category' => array(self::BELONGS_TO, 'BusinessCategory', 'category_id'),
'contacts' => array(self::HAS_MANY, 'Contacts', 'company_id'),
'staffCompanies' => array(self::HAS_MANY, 'StaffCompany', 'company_id'),
);
}
BusinessCategorypublic function relations()
{
return array(
'companies' => array(self::HAS_MANY, 'Company', 'category_id'),
);
}
StaffCompanypublic function relations()
{
return array(
'emailStaffCompanies' => array(self::HAS_MANY, 'EmailStaffCompany', 'staff_company_id'),
'networkStaffCompanies' => array(self::HAS_MANY, 'NetworkStaffCompany', 'staff_company_id'),
'phoneStaffCompanies' => array(self::HAS_MANY, 'PhoneStaffCompany', 'staff_company_id'),
'company' => array(self::BELONGS_TO, 'Company', 'company_id'),
);
}
PhoneStaffCompany, NetworkStaffCompany, EmailStaffCompanypublic function relations()
{
return array(
'staffCompany' => array(self::BELONGS_TO, 'StaffCompany', 'staff_company_id'),
);
}
Пытался сделать такой запрос к Contacts
Contacts::model()->with('company')->findAll(array("condition"=>"user_id = $user_id"));
но выдает только Контакт и Компанию
А ее Staff(их телефоны мыло ) и категорию
Как лучше сделать запрос, чтобы я обратился к контакту один раз, а он по связям собрал всю инфу в других таблицах?