Не могу понять, где ошибка в relations

Столкнулся с тем, что не понимаю, где закралась ошибка.

Есть модель FilesDetails:




class FilesDetails extends CActiveRecord

{

    	public static function model($className=__CLASS__)

    	{

            	return parent::model($className);

    	}


    	public function tableName()

    	{

            	return '{{FilesDetails}}';

    	}


    	public function relations()

    	{

            	return array(

                    	'mFile'=>array(self::BELONGS_TO,'Files','fid','select'=>'datpost,playtime,filesize,filename'),

                    	'userDetails'=>array(self::BELONGS_TO,'UserDetails','uid','select'=>'name'),

            	);

    	}

}

  

Делаю поиск:




            	$work=FilesDetails::model()->findByAttributes(

                                                                                      	array(

                                                                                            	'id'=>Yii::app()->request->getQuery('id'),

                                                                                            	'uid'=>Yii::app()->user->getId()

                                                                   							)

                                                                                    	);



И получаю следующее:




[trace] [system.caching.CFileCache] Serving "yii:dbschemamysql:host=localhost;dbname=admin_nrs:admin_nrs:{{FilesDetails}}" from cache

[trace] [system.db.ar.CActiveRecord] FilesDetails.findByAttributes()

[trace] [system.db.CDbCommand] Querying SQL: SELECT * FROM `rs_FilesDetails` `t` WHERE `t`.`id`=:yp0 AND `t`.`uid`=:yp1 LIMIT 1. Bound with :yp0='24', :yp1='1'

[profile] [system.db.CDbCommand.query] begin:system.db.CDbCommand.query(SELECT * FROM `rs_FilesDetails` `t` WHERE `t`.`id`=:yp0 AND `t`.`uid`=:yp1 LIMIT 1. Bound with :yp0='24', :yp1='1')

[profile] [system.db.CDbCommand.query] end:system.db.CDbCommand.query(SELECT * FROM `rs_FilesDetails` `t` WHERE `t`.`id`=:yp0 AND `t`.`uid`=:yp1 LIMIT 1. Bound with :yp0='24', :yp1='1')



Добавляю: with(‘mFile’)->together()->




            	$work=FilesDetails::model()->with('mFile')->together()->findByAttributes(

                                                                                      	array(

                                                                                            	'id'=>Yii::app()->request->getQuery('id'),

                                                                                            	'uid'=>Yii::app()->user->getId()

                                                                   							)

                                                                                    	);



И получаю два сгенерированных запроса:




[trace] [system.caching.CFileCache] Serving "yii:dbschemamysql:host=localhost;dbname=admin_nrs:admin_nrs:{{FilesDetails}}" from cache

[trace] [system.db.ar.CActiveRecord] FilesDetails.findByAttributes()

[trace] [system.caching.CFileCache] Serving "yii:dbschemamysql:host=localhost;dbname=admin_nrs:admin_nrs:{{Files}}" from cache


[trace] [system.db.CDbCommand] Querying SQL: SELECT t.id AS t0_c0, t.uid AS t0_c1, t.fid AS t0_c2, t.datpost AS t0_c3, t.viewed AS t0_c4, t.allowComment AS t0_c5, t.statusConvert AS t0_c6, t.statusFile AS t0_c7, t.getsec AS t0_c8, t.year AS t0_c9, t.typ AS t0_c10, t.name_ru AS t0_c11, t.name_en AS t0_c12, t.preview AS t0_c13, t.tags AS t0_c14, t.comment AS t0_c15, mFile.datpost AS t1_c1, mFile.playtime AS t1_c2, mFile.filesize AS t1_c3, mFile.filename AS t1_c4, mFile.id AS t1_c0 FROM rs_FilesDetails t  LEFT OUTER JOIN rs_Files mFile ON (t.fid=mFile.id)  WHERE (t.id=:yp0 AND t.uid=:yp1). Bound with :yp0='24', :yp1='1'

[profile] [system.db.CDbCommand.query] begin:system.db.CDbCommand.query(SELECT t.id AS t0_c0, t.uid AS t0_c1, t.fid AS t0_c2, t.datpost AS t0_c3, t.viewed AS t0_c4, t.allowComment AS t0_c5, t.statusConvert AS t0_c6, t.statusFile AS t0_c7, t.getsec AS t0_c8, t.year AS t0_c9, t.typ AS t0_c10, t.name_ru AS t0_c11, t.name_en AS t0_c12, t.preview AS t0_c13, t.tags AS t0_c14, t.comment AS t0_c15, mFile.datpost AS t1_c1, mFile.playtime AS t1_c2, mFile.filesize AS t1_c3, mFile.filename AS t1_c4, mFile.id AS t1_c0 FROM rs_FilesDetails t  LEFT OUTER JOIN rs_Files mFile ON (t.fid=mFile.id)  WHERE (t.id=:yp0 AND t.uid=:yp1). Bound with :yp0='24', :yp1='1')

[profile] [system.db.CDbCommand.query] end:system.db.CDbCommand.query(SELECT t.id AS t0_c0, t.uid AS t0_c1, t.fid AS t0_c2, t.datpost AS t0_c3, t.viewed AS t0_c4, t.allowComment AS t0_c5, t.statusConvert AS t0_c6, t.statusFile AS t0_c7, t.getsec AS t0_c8, t.year AS t0_c9, t.typ AS t0_c10, t.name_ru AS t0_c11, t.name_en AS t0_c12, t.preview AS t0_c13, t.tags AS t0_c14, t.comment AS t0_c15, mFile.datpost AS t1_c1, mFile.playtime AS t1_c2, mFile.filesize AS t1_c3, mFile.filename AS t1_c4, mFile.id AS t1_c0 FROM rs_FilesDetails t  LEFT OUTER JOIN rs_Files mFile ON (t.fid=mFile.id)  WHERE (t.id=:yp0 AND t.uid=:yp1). Bound with :yp0='24', :yp1='1')


[trace] [system.db.CDbCommand] Querying SQL: SELECT t.id AS t0_c0, mFile.datpost AS t1_c1, mFile.playtime AS t1_c2, mFile.filesize AS t1_c3, mFile.filename AS t1_c4, mFile.id AS t1_c0 FROM rs_FilesDetails t LEFT OUTER JOIN rs_Files mFile ON (t.fid=mFile.id)  WHERE (t.id='24')

[profile] [system.db.CDbCommand.query] begin:system.db.CDbCommand.query(SELECT t.id AS t0_c0, mFile.datpost AS t1_c1, mFile.playtime AS t1_c2, mFile.filesize AS t1_c3, mFile.filename AS t1_c4, mFile.id AS t1_c0 FROM rs_FilesDetails t LEFT OUTER JOIN rs_Files mFile ON (t.fid=mFile.id)  WHERE (t.id='24'))

[profile] [system.db.CDbCommand.query] end:system.db.CDbCommand.query(SELECT t.id AS t0_c0, mFile.datpost AS t1_c1, mFile.playtime AS t1_c2, mFile.filesize AS t1_c3, mFile.filename AS t1_c4, mFile.id AS t1_c0 FROM rs_FilesDetails t LEFT OUTER JOIN rs_Files mFile ON (t.fid=mFile.id)  WHERE (t.id='24'))


 

И вот я никак не могу понять, почему у меня при использовании with(‘mFile’)->together()-> генерируется два запроса?

p.s. версия yii последняя из svn

Проверил на yii-1.1.6.r2877 - такого "двойного запроса" нет. Обнозначно баг.

может из-за того что полей




$work=FilesDetails::model()->findByAttributes(

array(

 'id'=>Yii::app()->request->getQuery('id'),

 'uid'=>Yii::app()->user->getId()                                                                                                                     ));



в селекте нет


'mFile'=>array(self::BELONGS_TO,'Files','fid','select'=>'datpost,playtime,filesize,filename'),

Не. В Yii был баг, который уже поправили.