У меня 3 таблицы;
users
(
id_user
mediumint( UNSIGNED AUTO_INCREMENT NOT NULL,
username
varchar(25) NOT NULL,
password
varchar(32) NOT NULL,
email
varchar(255) NOT NULL,
date_created
int(10) UNSIGNED NOT NULL DEFAULT ‘0’,
date_modified
int(10) UNSIGNED NOT NULL DEFAULT ‘0’,
status
tinyint(1) UNSIGNED NOT NULL DEFAULT ‘0’,
verifyCode
int,
)
friends
(
id_subscription
mediumint( UNSIGNED AUTO_INCREMENT NOT NULL,
id_user
mediumint( UNSIGNED NOT NULL DEFAULT ‘0’,
id_friend
mediumint( UNSIGNED NOT NULL DEFAULT ‘0’,
date_created
int(10) UNSIGNED NOT NULL DEFAULT ‘0’,
/* Keys */
PRIMARY KEY (id_subscription
)
)
users_profiles
(
id_profile
mediumint( UNSIGNED AUTO_INCREMENT NOT NULL,
id_user
mediumint( UNSIGNED NOT NULL DEFAULT ‘0’,
name
varchar(20) NOT NULL,
surname
varchar(25) NOT NULL,
birthday
date,
day
tinyint(2),
month
tinyint(2),
year
int(4),
avatar
varchar(20) NOT NULL,
private
tinyint(1) UNSIGNED NOT NULL DEFAULT ‘0’,
country
varchar(255) NOT NULL,
city
varchar(255) NOT NULL,
messages
mediumint( UNSIGNED NOT NULL DEFAULT ‘0’,
friends
mediumint( UNSIGNED NOT NULL DEFAULT ‘0’,
readers
mediumint( UNSIGNED NOT NULL DEFAULT ‘0’,
url
varchar(150) NOT NULL,
about
text NOT NULL,
/* Keys */
PRIMARY KEY (id_profile
)
)
class User extends CActiveRecord
{
…
public function relations()
{
return array(
'profile' => array(self::HAS_ONE, 'UserProfile', 'id_user'),
'friends' => array(self::HAS_ONE, 'Friend', 'id_user')
);
}
}
Делаю следующее:
$criteria = new CDbCriteria();
$criteria->condition = 'id_user = 85';
$pages = new CPagination(User::model()->with('profile','friends')->together()->count($criteria));
$pages->pageSize = 20;
$pages->applyLimit($criteria);
$users = User::model()->with('profile','friends')->together()->findAll($criteria);
И возникает ошибка:
CDbCommand не удалось исполнить SQL-запрос: SQLSTATE[23000]: Integrity constraint violation: 1052 Column ‘id_user’ in where clause is ambiguous
Не понимаю как задать алиас для таблицы. Пробовал так:
$criteria->condition = 'friends.id_user = 85';
но возникает ошибка: Unknown column ‘friends.id_user’ in ‘where clause’