elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  [SOLUCIONADO] Dependent DropdownList con Yii framework
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [SOLUCIONADO] Dependent DropdownList con Yii framework  (Leído 13,121 veces)
Graphixx


Desconectado Desconectado

Mensajes: 1.336


Full Stack Developer


Ver Perfil WWW
[SOLUCIONADO] Dependent DropdownList con Yii framework
« en: 19 Mayo 2011, 17:45 pm »

Hola compañeros ya que es medio complicado implementar combos dependientes en el framework. les comparto el codigo trabajando.

Lo estoy implementando:
***********************

Modelo: CombosDependientes
Controlador: CombosDependientes
Vista: _form.php

Haciendo uso de los modelos:
****************************

Departamento:
codDepartamento
strDepartamento

Municipio:
codMunicipio
strMunicipio
codDepartamento

Corregimiento:
codCorregimiento
strCorregimiento
codMunicipio
codDepartamento

En el controlador:
Código
  1. <?php
  2. // Funcion para llenar combobox dependiente de lo que seleccione el usuario en Departamento/Municipio/Corregimiento
  3.  
  4. public function actionDynamicMunicipios()
  5.    {
  6.        $data = Municipio::model()->findAll('codDepartamento=:parent_id',
  7.                        array(':parent_id'=>(int) $_POST['CombosDependientes']['codDepartamento']));
  8.  
  9.  
  10.        $data = CHtml::listData($data,'codMunicipio','strMunicipio');
  11. echo CHtml::tag('option',array('value' => ''),'Seleccione un municipio...',true);
  12.            foreach($data as $id => $value)
  13.            {
  14.                echo CHtml::tag('option',array('value' => $id),CHtml::encode($value),true);
  15.            }
  16.  
  17.    }
  18.  
  19.    public function actionDynamicCorregimientos()
  20.    {
  21.        $data = Corregimiento::model()->findAll('codMunicipio=:parent_id',
  22.                        array(':parent_id'=>(int) $_POST['CombosDependientes']['codMunicipio']));
  23.  
  24.        $data = CHtml::listData($data,'codCorregimiento','strCorregimiento');
  25. echo CHtml::tag('option',array('value' => ''),'Seleccione un corregimiento...',true);
  26.            foreach($data as $id => $value)
  27.            {
  28.                echo CHtml::tag('option',array('value' => $id),CHtml::encode($value),true);
  29.            }
  30.    }
  31. ?>
  32.  

En la vista:
Código
  1. <!-- INICIO COMBOS DEPENDIENTES -->
  2. <div class="row">
  3.        <?php echo $form->labelEx($model,'Departamento'); ?>
  4.        <?php
  5.              $departamento = new CDbCriteria;
  6.              $departamento->order = 'strDepartamento ASC';
  7.        ?>
  8.        <?php
  9.              echo $form->dropDownList($model,'codDepartamento',CHtml::listData(Departamento::model()->findAll($departamento),'codDepartamento','strDepartamento'),
  10.                        array(
  11.                            'ajax' => array(
  12.                            'type' => 'POST',
  13.                            'url' => CController::createUrl('CombosDependientes/dynamicMunicipios'),
  14.                            'update' => '#CombosDependientes_codMunicipio'
  15.                        ),'prompt' => 'Seleccione un Departamento...'
  16.                  )
  17.              );
  18.        ?>
  19.        <?php echo $form->error($model,'codDepartamento'); ?>
  20.    </div>
  21.  
  22.    <div class="row">
  23.        <?php echo $form->labelEx($model,'Municipio'); ?>
  24.        <?php
  25.              $municipio = new CDbCriteria;
  26.              $municipio->order = 'strMunicipio ASC';
  27.        ?>
  28.        <?php
  29.              echo $form->dropDownList($model,'codMunicipio',CHtml::listData(Municipio::model()->findAll($municipio),'codMunicipio','strMunicipio'),
  30.                        array(
  31.                            'ajax' => array(
  32.                            'type' => 'POST',
  33.                            'url' => CController::createUrl('CombosDependientes/dynamicCorregimientos'),
  34.                            'update' => '#CombosDependientes_codCorregimiento'
  35.                        ),'prompt' => 'Seleccione un Municipio...'
  36.                    )
  37.              );
  38.        ?>
  39.        <?php echo $form->error($model,'codMunicipio'); ?>
  40.    </div>
  41.  
  42.  
  43.    <div class="row">
  44.  
  45.        <?php echo $form->labelEx($model,'Corregimiento'); ?>
  46.        <?php echo $form->dropDownList($model,'codCorregimiento',array('Seleccione un Corregimiento...'));?>
  47.        <?php echo $form->error($model,'codCorregimiento'); ?>
  48.    </div>
  49. <!-- FIN COMBOS DEPENDIENTES -->
  50.  

El codigo trabaja perfecto :D


« Última modificación: 12 Junio 2011, 08:34 am por Graphixx » En línea

Nada tiene fin solo hay pequeñas pausas, pausas que determinan el comienzo de otros. Graphixx Rōninnovation
Nakp
casi es
Ex-Staff
*
Desconectado Desconectado

Mensajes: 6.336

he vuelto :)


Ver Perfil WWW
Re: [DUDA] Dependent DropdownList con Yii framework
« Respuesta #1 en: 22 Mayo 2011, 20:03 pm »

pues... no discutire la forma en que trabajas con Yii, no lo he usado a fondo pero.. por que llamas al modelo en una vista? x_X

supongo que lo estas haciendo en base a este tutorial :xD

http://www.yiiframework.com/wiki/24/creating-a-dependent-dropdown/

no veo nada distinto mas que el replace :P  perdona que no lo compruebe yo mismo pero me gustan mas otros frameworks xD


« Última modificación: 22 Mayo 2011, 20:07 pm por Nakp » En línea

Ojo por ojo, y el mundo acabará ciego.
Graphixx


Desconectado Desconectado

Mensajes: 1.336


Full Stack Developer


Ver Perfil WWW
Re: [SOLUCIONADO] Dependent DropdownList con Yii framework
« Respuesta #2 en: 24 Mayo 2011, 23:17 pm »

ya lo solucione yo solo  ::) A proposito compa, en que desarrollas, Kumbia, Cake, Zend ???....
En línea

Nada tiene fin solo hay pequeñas pausas, pausas que determinan el comienzo de otros. Graphixx Rōninnovation
Nakp
casi es
Ex-Staff
*
Desconectado Desconectado

Mensajes: 6.336

he vuelto :)


Ver Perfil WWW
Re: [SOLUCIONADO] Dependent DropdownList con Yii framework
« Respuesta #3 en: 25 Mayo 2011, 01:33 am »

codeigniter, fuel, doophp, a veces zend :) +jquery hardcoded xD
En línea

Ojo por ojo, y el mundo acabará ciego.
pabloramirez77

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: [SOLUCIONADO] Dependent DropdownList con Yii framework
« Respuesta #4 en: 1 Abril 2012, 22:43 pm »

Hola amigo, estoy probando tu codigo pero el mismo no me funciona, te anexo mi codigo a ver si me puedes ayudar.

Lo estoy implementando:
***********************
Modelo: Institucion
Controlador: InstitucionController
Vista: _form.php

_form.php
<?php
// Funcion para llenar combobox dependiente de lo que seleccione el usuario en Estado/Municipio/Parroquia   
    <!-- INICIO COMBOS DEPENDIENTES -->
    
    <div class="row">
        <?php echo $form->labelEx($model,'Estado'); ?>
        <?php
              $estado = new CDbCriteria;
              $estado->order = 'nombre_estado ASC';
        ?>
        <?php
              echo $form->dropDownList($model,'id_estado',CHtml::listData(estado::model()->findAll($estado),'id_estado', 'nombre_estado'),
                        array(
                            'ajax' => array(
                            'type' => 'POST',
                            'url' => CController::createUrl('InstitucionController/actionDynamicMunicipios'),
                            'update' => '#InstitucionController_id_municipio'
                        )   ,'prompt' => 'Seleccione un estado..'    
                  )
              );
        ?>
        <?php echo $form->error($model,'id_estado'); ?>
    </div>
    
    <div class="row">
        <?php echo $form->labelEx($model,'Municipio'); ?>
        <?php
              $municipio = new CDbCriteria;
              $municipio->order = 'Nombre_Municipio ASC';
        ?>
        <?php
              echo $form->dropDownList($model,'id_municipio',CHtml::listData(municipio::model()->findAll($municipio),'id_municipio','nombre_municipio'),
                        array(
                            'ajax' => array(
                            'type' => 'POST',
                            'url' => CController::createUrl('CombosDependientes/dynamicCorregimientos'),
                            'update' => '#InstitucionController_id_parroquia'
                        ),'prompt' => 'Seleccione un Municipio...'
                    )
              );
        ?>
        <?php echo $form->error($model,'codMunicipio'); ?>
    </div>
    
    <div class="row">
 
        <?php echo $form->labelEx($model,'Corregimiento'); ?>
        <?php echo $form->dropDownList($model,'id_parroquia',array('Seleccione un Corregimiento...'));?>
        <?php echo $form->error($model,'id_parroquia'); ?>
    </div>
    
    <!-- FIN COMBOS DEPENDIENTES -->


?>

InstitucionController.php
 public function actionDynamicMunicipios()
    {
        $data = Municipio::model()->findAll('codDepartamento=:parent_id',
                        array(':parent_id'=>(int) $_POST['Institucion']['id_estado']));
 
 
        $data = CHtml::listData($data,'id_Municipio','nombre_Municipio');
      echo CHtml::tag('option',array('value' => ''),'Seleccione un municipio...',true);
            foreach($data as $id => $value)
            {
                echo CHtml::tag('option',array('value' => $id),CHtml::encode($value),true);
            }
 
    }
 
    public function actionDynamicCorregimientos()
    {
        $data = Corregimiento::model()->findAll('codMunicipio=:parent_id',
                        array(':parent_id'=>(int) $_POST['Institucion']['id_municipio']));
 
        $data = CHtml::listData($data,'id_parroquia','nombre_parroquia');
      echo CHtml::tag('option',array('value' => ''),'Seleccione un corregimiento...',true);
            foreach($data as $id => $value)
            {
                echo CHtml::tag('option',array('value' => $id),CHtml::encode($value),true);
            }
    }
En línea

pabloramirez77

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: [SOLUCIONADO] Dependent DropdownList con Yii framework
« Respuesta #5 en: 2 Abril 2012, 00:19 am »

Gracias buen amigo ya encontre la solucion.. un abrazo
En línea

tamayo461

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Re: [SOLUCIONADO] Dependent DropdownList con Yii framework
« Respuesta #6 en: 7 Junio 2012, 05:23 am »

Hola, alguien me podria ayudar con yii dramework?
En línea

Graphixx


Desconectado Desconectado

Mensajes: 1.336


Full Stack Developer


Ver Perfil WWW
Re: [SOLUCIONADO] Dependent DropdownList con Yii framework
« Respuesta #7 en: 7 Junio 2012, 21:05 pm »

Hola, alguien me podria ayudar con yii dramework?

Yo puse dos manuales en el foro para que comiences.
http://foro.elhacker.net/php/manual_01_para_aprender_yii_framework_conceptos_basicos_e_instalacion-t342572.0.html
En línea

Nada tiene fin solo hay pequeñas pausas, pausas que determinan el comienzo de otros. Graphixx Rōninnovation
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
llenar un dropdownlist
.NET (C#, VB.NET, ASP)
pedraxito 1 9,894 Último mensaje 29 Octubre 2007, 06:55 am
por Hadess_inf
[Asp.net] Redireccionamiento con DropDownList???
.NET (C#, VB.NET, ASP)
mbc 5 7,373 Último mensaje 6 Marzo 2008, 23:16 pm
por [D4N93R]
.C# DropDownList
.NET (C#, VB.NET, ASP)
ave_99 0 4,178 Último mensaje 19 Septiembre 2008, 18:29 pm
por ave_99
LLENAR DROPDOWNLIST C# .NET
.NET (C#, VB.NET, ASP)
eaguila7 2 14,887 Último mensaje 16 Octubre 2009, 15:12 pm
por MANULOMM
Manual 02 para aprender YII FRAMEWORK [ Instalacion de Mbmenu en YII FRAMEWORK]
PHP
Graphixx 0 5,971 Último mensaje 10 Noviembre 2011, 19:43 pm
por Graphixx
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines