YiiFramework YII select с динамическим контентом

  • Автор темы Автор темы Удалённый пользователь 19687
  • Дата начала Дата начала

Удалённый пользователь 19687

Guest
делал по инструкции. Помогите пожалуйста, ошибку найти. Присваивается постоянно check_admin_company_fk=1 и передается во второй селект, остальные ключи других компаний не видит буд-то бы.


Код:
 echo $form->dropDownList($model,'check_admin_company_fk', CompanyAdmin::alladmin(),
            array(
            'options' => array('2'=>array('selected'=>true)),
            'ajax' => array(
            'type'=>'GET', 
            'url'=>CController::createUrl('/dynamicBanks/', array('id' => $model->check_admin_company_fk) ), //url to call.
            'update'=>'#check_admin_company_fk', 
            ))); 
            echo $form->error($model,'check_admin_company_fk');
Напрямую проверил урлы
http://localhost/dynamicBanks/id/1.html
http://localhost/dynamicBanks/id/2.html
Данные отдает, а в селект второй не передает то что в id=2. Указал жестко селектетед с ид=2 и тоже не показывает во втором селекте
 
Капец, сколько сайтов надо перелапатить что бы понять... два дня почти ковырялся что бы добится, что бы сделать именно через Yii средства. И все таки сделал. На ответ натолкнул этот пост - открыть

PHP:
  echo $form->dropDownList($model,'check_admin_company_fk', CompanyAdmin::alladmin(),
                 
            array(

            'ajax' => array(
            'type'=>'GET',
            'url'=>CController::createUrl('/dynamicBanks' ),
         
            'update'=>'#bank_id',
            'data'=>array('id'=>'js:this.value'),
            )));
Вот тут надо было передавать айдишник 'data'=>array('id'=>'js:this.value'), и всегото. а с урл убрать, я подсознательно понимал что ид где-то должен передаватся, вот и подумал что по типичному к урл добавить... и "лепил")).

Передаются теперь id. Только вопрос, что это значит за параметр с подчеркиванием?
PHP:
?id=2&_=1432925676812
 
Код:
      protected function beforeSave() {
      if(parent::beforeSave()) {      
        if(isset($_POST['check_admin_bank_fk'])){
            echo $this->check_admin_bank_fk = $_POST['check_admin_bank_fk'];
        }
      }
    }
Вот так написал в модели, тогда во view не переходит, просто обновляется страница с формой редактирования и в ней задано то что выбирал. Но когда перехожу во вьею или в admin страницу тогда там вижу что ничего не поменялось.
Как сохранить значение со второго селекта?
 
Сверху