2013-05-17 4 views
0

Je génère des modèles et CRUD pour mes tables de base de données en utilisant Gii dans le framework web YII, la chose est que je veux changer certains des attributs qui me sont montrés. Je ne sais pas comment? Je reçois le code _FORM.php du CRUD généré à l'un des tableaux et je connais le morceau de code que je dois changer pour obtenir un attribut différent au lieu de celui qui m'a été montré sans savoir pourquoi?Affichage d'un attribut spécifique lors de la génération de CRUD dans Yii Web Framwork utilisant giix extenstion

<div class="row"> 
    <?php echo $form->labelEx($model,'idEmployee'); ?> 
    <?php echo $form->dropDownList($model, 'idEmployee', GxHtml::listDataEx(Employee::model()->findAllAttributes(null, true))); ?> 
    <?php echo $form->error($model,'idEmployee'); ?> 
    </div><!-- row --> 

dans le code précédent sous la forme a montré une liste déroulante d'une autre table articulée avec la table en cours selon idEmployee, il montre un attribut que je ne veux pas, je veux savoir comment rendre le FirstName et le nom de famille dans la liste déroulante, n'importe quelle aide s'il vous plaît?

Répondre

1

je crois qu'il est plus facile quand vous venez de créer votre propre fournisseur de liste déroulante

dans le Employee.php vous ajoutez ces deux fonctions:

public function getFullName() 
{ 
    return $this->first_name.' '.$this->last_name; // or what ever you want to be shown on the drop list 
} 


public static function getNamesList() { 
    return CHtml::listData(self::model()->findAll(), 'idEmployee', 'fullName'); 
} 

dans l'écriture _form.php:

<div class="row"> 
<?php echo $form->labelEx($model,'idEmployee'); ?> 
<?php echo $form->dropDownList($model, 'idEmployee', Employee::getNamesList()); ?> 
<?php echo $form->error($model,'idEmployee'); ?> 
</div><!-- row --> 
+0

Peut-être que vous pouvez remplacer le CHtml :: listData avec le GxHtml :: listDataEx de la question d'origine et fonctionne encore parce que GxHtml s'étend à partir de CHtml. – javijuol

Questions connexes