Создание condition из другой таблицы

Привет. Есть к примеру 2 таблицы:

  1. С карточками ‘cards’ поля: id | postal_code | adm_area |date

  2. С избранными карточками пользователя ‘favorites’ поля: id | user_id |card_id

Все карточки выбираю следущим экшином:





public function actionTest()

        {




$criteria=new CDbCriteria();


$dataProvider=new CActiveDataProvider('cards', array(

			'criteria'=>$criteria,

			'pagination'=>array('pageSize'=>10),

			));

 		$this->render('list', array('dataProvider'=>$dataProvider));




}




потом отправляю его в CListView. Как добавить к этому экшинсу condition что бы выбирались только карточки добавленные в избранное только определенным пользователем.

Например Yii::app()->user->id==‘21’, мне необходимо в таблице favorites выбрать все card_id соответствующие нашему пользователю а затем уже выбрать из таблицы с карточками избранные карточки нашего пользователя. Как это красиво сделать?

favorites::model()->with(‘cards’)->findAll(array(‘condition’ => ‘user_id=21’))

в модели favorites

public function relations() {

	return array(


		'cards' => array(self::BELONGS_TO, 'cards', 'card_id'),


	);

}

Большое спасибо. Все ходил вокруг да около но додуматься не смог. Буду читать доки дальше. :)