Как создать шаблон формы на yii

Пользователь

от ian.heidenreich , в категории: PHP , 2 года назад

Как создать шаблон формы на yii

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от keyon.brown , 2 года назад

@ian.heidenreich 

Для создания шаблона формы на Yii вам нужно выполнить следующие шаги:

  1. Создайте файл представления для формы в директории views/your_controller_name/ с расширением .php (например, views/site/form.php). В этом файле вы можете использовать HTML и Yii-виджеты для создания формы.
  2. Определите форму в контроллере. Вы можете создать новый экземпляр модели и передать его в представление, используя следующий код:
1
2
3
4
$model = new YourModel();
return $this->render('form', [
    'model' => $model,
]);


  1. В вашем файле представления (form.php) вы можете использовать виджет ActiveForm Yii для создания формы:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
<?php $form = ActiveForm::begin(); ?>

    <?= $form->field($model, 'attribute_name')->textInput() ?>

    <?= $form->field($model, 'attribute_name')->dropDownList(['option1' => 'Option 1', 'option2' => 'Option 2']) ?>

    <?= $form->field($model, 'attribute_name')->radioList(['option1' => 'Option 1', 'option2' => 'Option 2']) ?>

    <?= $form->field($model, 'attribute_name')->checkbox() ?>

    <div class="form-group">
        <?= Html::submitButton('Submit', ['class' => 'btn btn-primary']) ?>
    </div>

<?php ActiveForm::end(); ?>


  1. Обновите действие контроллера, чтобы обрабатывать отправленные данные формы:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
public function actionForm()
{
    $model = new YourModel();
    if ($model->load(Yii::$app->request->post()) && $model->validate()) {
        // сохранение данных модели
        return $this->redirect(['success']);
    } else {
        return $this->render('form', [
            'model' => $model,
        ]);
    }
}


Это основные шаги для создания шаблона формы на Yii. В зависимости от вашего конкретного случая, вам может потребоваться дополнительная настройка, но эти шаги дадут вам базовый шаблон для работы с формами в Yii.