У меня есть таблица mysql и представление mysql, для которого я пытаюсь построить отношения.
Таблица (commissions
) выглядит следующим образом:
--commissions--
id(primary Key)
date_added
order_id
salesrep_id
customer_id
commission_total
status
Представление (rep_view_customer
) выглядит следующим образом:
--rep_view_customer--
entity_id
email
first_name
last_name
company
Я пытаюсь связать rep_view_customer
с commissions
на commissions.customer_id = rep_view_customer.entity_id
.
Я пытался использовать on
опция:
'rep_view_customer' => array(self::HAS_ONE, 'RepViewCustomer', '', 'on'=>'rep_view_customer.entity_id = t.customer_id')
Я также попытался установить первичный ключ для модели rep_view_customer
, используя:
public function primaryKey(){
return 'entity_id';
}
Но у меня всегда появляется ошибка, похожая на:
CDbCommand не удалось выполнить инструкцию SQL: SQLSTATE [42S22]: Столбец не найден: 1054 Неизвестный столбец 't.customer_id' в 'предложении where'.Выполнено SQL-выражение: SELECT rep_view_customer
. entity_id
AS t1_c0
, rep_view_customer
. email
AS t1_c1
, rep_view_customer
. first_name
AS t1_c2
, rep_view_customer
. last_name
КАК t1_c3
, rep_view_customer
. company
КАК t1_c4
ОТ rep_view_customer
rep_view_customer
ГДЕ (rep_view_customer.entity_id = t.customer_id)
Я в конце концов, чтопопробовать следующий