Yii $form->textfield, comment définir une valeur par défaut?
Donc je suis à jouer avec les Yii Framework et dans l'un des points de vue, plus précisément le formulaire créer, je suis en train de donner un de mes objets textfield une valeur par défaut. Donc quand je vais sur ma page créer les valeurs sont déjà préchargés sur le formulaire.
Voici mon code actuel
<div class="row">
<?php echo $form->labelEx($model,'teamlead'); ?>
<?php echo $form->textField($model,'teamlead',array('size'=>50,'maxlength'=>50,'value'=>Yii::app()->user->getUsername(),'disabled'=>'disabled')); ?>
<?php echo $form->error($model,'teamlead'); ?>
</div>
Lorsque je clique sur créer, Yii me donne une erreur me disant qu'il y textField
est vide? Pas sûr de ce que je peux faire d'autre que de définir la valeur. Suis-je suppose que pour définir les attributs de modèle?
Vous devez vous connecter pour publier un commentaire.
avant de champ description du champ ajouter ce:
init()
fonctionIl fonctionne sur ma fin:
Toujours, c'est une bonne idée de traiter les données (défaut de valeurs, de modifier de quelque chose qui se passe, traitement de données, etc...) sur le modèle de la classe.
Si vous avez de la valeur de l'après-initialiser le modèle, le meilleur moyen est d'utiliser la méthode init().
Mais, si vous souhaitez modifier ou définir une valeur par défaut après le chargement de données à partir de la base de données, vous pouvez utiliser la méthode afterFind()
Par exemple:
Ce lien a beaucoup d'information utile sur ces méthodes: http://www.yiiframework.com/doc/guide/1.1/en/database.ar#customization
Voici mon code que je vous envoie fixe de la valeur dans la base de données et de montrer que la valeur en lecture seule.
Veuillez utiliser
array('readonly' => true)
au lieu dedisabled
.Je crois que le MVC façon de le faire est de placer votre valeur par défaut dans votre Modèle:
Ou dans votre contrôleur:
mettre
array('readonly'=>'true')
dans votre code, il travaillera