Как настроить валидацию на yii2?

Дело в том, что у меня есть чекбокс, который отключает поле ввода, но несмотря на это, поля продолжает проверяется на валдиацию. Как правильно прописать правило, чтобы в момент,когда чекбокс не нажат проверка поля не производилась?


Ответы (1 шт):

Автор решения: cy4oHok

Вам нужно почитать про валидацию моделей в Yii2 - required when и required whenClient

https://www.yiiframework.com/doc/guide/2.0/ru/input-validation

В Вашем случае думаю будет выглядеть как-то так

public function rules()
{
        return [
            [
                ['goodscount' ], 'required', 'message' => AdminModule::t('goods', 'Fill the field goodscount'),
                'when' => function( $model ) {
                    return ( !is_null( $model->buy_goods) && $model->buy_goods == 1 ); //проверка на стороне сервера
                },
                'whenClient' => 'function(attribute,value) {
                    return ( $("#basketform-buy_goods").is(':checked') ); //проверка на стороне браузера
                }'

            ],
         ]
}
→ Ссылка