I'm using a DropDownlist a select2 and a Depdrop with Yii2,
This is my form:
<?php $empresa = ArrayHelper::map(Companies::find()->all(),'company_id', 'company_name');
echo $form->field($model, 'companies_company_id')->dropDownList($empresa, ['id'=>'company_id']); ?>
<?php echo $form->field($model, 'branches_branch_id')->widget(DepDrop::classname(), [
'type'=>DepDrop::TYPE_SELECT2,
'options'=>['id'=>'branch_id'],
'select2Options'=>['pluginOptions'=>['allowClear'=>true]],
'pluginOptions'=>[
'depends'=>['company_id'],
'placeholder'=>'Seleccionar sucursal...',
'url'=> $base,
]
]);
?>
this is my model:
public static function getBranches($branch_id)
{
$data=Branches::find()
->where(['companies_company_id'=>$branch_id])
->select(['branch_id','branch_name'])->AsArray()->all();
//$data2 = ArrayHelper::map($data, 'branch_id','branch_name');
//var_dump($data[0]);
//exit;
if(empty($data))
{
return $data;
}else
{
return $data[0];
}
}
this is my controller:
public function actionSubcat()
{
$sucursal = [];
if (isset($_POST['depdrop_parents'])) {
$parents = $_POST['depdrop_parents'];
if ($parents != null) {
$id_branch = $parents[0];
$Branch = new Branches();
$sucursal = $Branch->getBranches($id_branch);
//$Branch->getBranches($cat_branch);
//ArrayHelper::map(Branches::find()->all(), 'branch_id', 'branch_name');
//ArrayHelper::map(Branches::find()->all(), 'branch_id', 'branch_name');//self::getSubCatList($branch_id);
echo Json::encode(['output'=>$sucursal, 'selected'=>'']);
return;
}
}
echo Json::encode(['output'=>[], 'selected'=>'']);
}
