我已经被困了三个小时而我找不到解决方案,我只想在我的下拉列表中显示business_package
表中的那些包的名称。
我的sql查询工作正常我不知道怎么写cdbcriteria,我试着用cdbcriteria写,但我每次都得到错误。下面给出的是我的SQL查询。
select package.id
from package
join business_package on package.id = business_package.package_id
我想使用下面给出的下拉列表中的结果。
$this->widget('ext.select2.ESelect2',array(
'name'=>'ReviewPackage[Package_id]',
'data'=>CHtml::listData(Package::model()->findAll($criteria), 'id', 'package_name'),
//the whole available list of those package which are in business package table.
'htmlOptions'=>array(
'placeholder'=>' search Business name?',
//'options'=>$options, //the selected values
// 'multiple'=>'multiple',
'style'=>'width:530px',
),
));
答案 0 :(得分:2)
请参阅http://www.yiiframework.com/doc/guide/1.1/en/database.query-builder
这样的事情应该这样做:
$criteria = new CDbCriteria;
$criteria->alias = 'package';
$criteria->select = 'package.id';
$criteria->join='LEFT JOIN business_package ON business_package.package_id=package.id';