Menus

Monday, 11 December 2017

Yii2 CheckBox

LIKE | COMMENT | SHARE | SUBSCRIBE
LIKE | COMMENT | SHARE | SUBSCRIBE

Yii2 - Display checkbox for boolean database field on active form


<?= $form->field($model, 'mon')->checkBox(['selected' => $model->mon])?>

Change Label


<?= $form->field($model, 'mon')->checkBox(['label'=> 'Monday',  'selected' => $model->mon])?>



Required Checkbox

Add this code your rules function on model class

           [['mon''], 'compare',
                'compareValue' => true,
                'operator' => '==',
                'message' => "Check to Continue",
                'when' => function ($data) {
                    return $data->mon== 1;
                }
            ],



Example

Model class

<?php

namespace backend\modules\test\models;

use Yii;

/**
 * This is the model class for table "studentsdetails".
 *
 * @property integer $id
 * @property string $name
 * @property string $address
 * @property integer $isverified
 */
class Studentsdetails extends \yii\db\ActiveRecord
{
    /**
     * @inheritdoc
     */
    public static function tableName()
    {
        return 'studentsdetails';
    }

    /**
     * @inheritdoc
     */
    public function rules()
    {
        return [
            [['name', 'isverified'], 'required'],
            [['isverified'], 'integer'],
            [['name'], 'string', 'max' => 300],
            [['address'], 'string', 'max' => 500],
         
            [['isverified'], 'compare',
                'compareValue' => true,
                'operator' => '==',
                'message' => "Check to Continue",
                'when' => function ($data) {
                    return $data->isverified== 1;
                }
            ],

         
        ];
    }

    /**
     * @inheritdoc
     */
    public function attributeLabels()
    {
        return [
            'id' => 'ID',
            'name' => 'Name',
            'address' => 'Address',
            'isverified' => 'Isverified',
        ];
    }
}

View file
_form.php

<?php

use yii\helpers\Html;
use yii\widgets\ActiveForm;

/* @var $this yii\web\View */
/* @var $model backend\modules\test\models\Studentsdetails */
/* @var $form yii\widgets\ActiveForm */
?>

<div class="studentsdetails-form">

    <?php $form = ActiveForm::begin(); ?>

    <?= $form->field($model, 'name')->textInput(['maxlength' => true]) ?>

    <?= $form->field($model, 'address')->textInput(['maxlength' => true]) ?>

 
    <?= $form->field($model, 'isverified')->checkBox(['selected' => $model->isverified])?>
 
 
    <div class="form-group">
        <?= Html::submitButton($model->isNewRecord ? 'Create' : 'Update', ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']) ?>
    </div>

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

</div>

No comments:

Post a Comment