以下代码正在工作,除了一件事。用于部门的过滤器应取决于在过滤器中为区域选择的值(一个部门属于一个区域)。我已尝试使用您在部门过滤器上看到的 FindAllByAttributes(),但它不起作用。我可以使用 FindAll() 但是这两个过滤器不相关。关于如何实现这一目标的任何想法?
谢谢
$this->widget('zii.widgets.grid.CGridView', array(
'id'=>'mainGrid',
'dataProvider'=>$model->filterForDefaultSalesUserManagement(),
'filter'=>$model,
'columns'=>array(
array(
'class'=>'CCheckBoxColumn',
'id'=>'checkedColumn',
'selectableRows'=>2
),
array(
'name'=>'Fr_RegionId',
'header'=>'Region',
'value'=>'$data->frDepartment->frRegion->NameFR',
'filter'=>CHtml::listData(FrRegion::model()->findAll(),'Id','NameFR')
),
array(
'name'=>'Fr_DepartmentId',
'header'=>'Department',
'value'=>'$data->frDepartment->NameFR',
'filter'=>CHtml::listData(FrDepartment::model()->findAllByAttributes(
array(),
$condition = "fr_RegionId = :regionId",
$params = array(':regionId'=>$data->frDepartment->frRegion->Id)
),
'Id','NameFR')
),
'PostalCode',
'NameFR',
)
));