Как заполнить текстовое поле со значением базы данных в Yii? - PullRequest
3 голосов
/ 13 марта 2012

Я хочу заполнить одно из текстовых полей значением из базы данных.

Обычно этот код рекомендуется:

<div class="row">
  <?php echo $form->labelEx($model,'field1'); ?>
  <?php echo Model1::model()->FindByPk($model->id)->field1;?>
  <?php echo $form->error($model,'field1'); ?>
</div>

Но то, что я ищу, это значение заполняется в текстовое поле в форме.

Может ли кто-нибудь мне помочь? Спасибо ..

Ответы [ 2 ]

1 голос
/ 13 марта 2012

Вы смотрели на Демо-версию блога Yii ? Он также доступен в пакете загрузки.

Как правило, это рекомендуется:

<?php
echo $form->labelEx($model, 'field', 'label text');
echo $form->textField($model, 'field');
echo $form->error($model, 'field');
?>

Если модель содержит данные из базы данных, она будет отображаться при загрузке представления. Ваш код в действии контроллера может выглядеть так:

// ...
$model = Model1::model()->findByPk($id); // $id has to be the primary key of the model you want to load
$this->render('viewfile', array(
    'model'=>$model, // this $model is then the same $model as in the view
));
1 голос
/ 13 марта 2012

Попробуйте это:

<?php echo Chtml::textField('txtFieldName', Model1::model()->FindByPk($model->id)->field1); ?>
...